wordpress自定义字段(3):怎样添加自定义字段面版?

ordpress自定义字段的功能时非常强大的,在wordpress主题制作过程中,我们可以用wordpress自定义字段来干很多的事情,比如:调用文章图片、添加关键词面版、添加商品信息模块……等等,总之,wordpress自定义字段可以帮助主题开发者做很多的事情了。嗯,本章通过“如何创建wordpress自定义字段面版”这个简单案例来讲解自定义字段在wordpress主题制作过程中的使用。

首先在主题文件夹下创建一个metabox.php文件,然后,在主题的functions.php文件中引用metabox.php文件,即include这个文件。然后就是给meatbox.php文件添加代码了,本案例以在后台文章发表页面添加“关键词和描述”自定义字段面版。

1、创建一个二维数组,代码如下:

$new_meta_boxes =
array(
"description" => array(
"name" => "description",
"std" => "这里填默认的网页描述",
"title" => "网页描述:"),

"keywords" => array(
"name" => "keywords",
"std" => "这里填默认的网页关键字",
"title" => "关键字:")
);

数组的第一个元素就是description字段的信息,即文章描述,包括标题、字段名、描述信息。第二个元素是keywords字段,即关键字。

2、创建显示函数显示描述和关键字面版,代码如下:

function new_meta_boxes() {
global $post, $new_meta_boxes;

foreach($new_meta_boxes as $meta_box) {
$meta_box_value = get_post_meta($post->ID, $meta_box[\'name\'].\'_value\', true);

if($meta_box_value == "")
$meta_box_value = $meta_box[\'std\'];

echo\'\';

// 自定义字段标题
echo\'

\'.$meta_box[\'title\'].\'

\';

// 自定义字段输入框
echo \'
\';
}
}

这个函数用来显示自定义面板的内容,将作为add_meta_box函数才callback参数调用。

3、创建面版,代码如下:

function create_meta_box() {
global $theme_name;

if ( function_exists(\'add_meta_box\') ) {
add_meta_box( \'new-meta-boxes\', \'自定义模块\', \'new_meta_boxes\', \'post\', \'normal\', \'high\' );
}
}

4、 保存面版更新数据,代码如下:

function save_postdata( $post_id ) {
global $post, $new_meta_boxes;

foreach($new_meta_boxes as $meta_box) {
if ( !wp_verify_nonce( $_POST[$meta_box[\'name\'].\'_noncename\'], plugin_basename(__FILE__) )) {
return $post_id;
}

if ( \'page\' == $_POST[\'post_type\'] ) {
if ( !current_user_can( \'edit_page\', $post_id ))
return $post_id;
}
else {
if ( !current_user_can( \'edit_post\', $post_id ))
return $post_id;
}

$data = $_POST[$meta_box[\'name\'].\'_value\'];

if(get_post_meta($post_id, $meta_box[\'name\'].\'_value\') == "")
add_post_meta($post_id, $meta_box[\'name\'].\'_value\', $data, true);
elseif($data != get_post_meta($post_id, $meta_box[\'name\'].\'_value\', true))
update_post_meta($post_id, $meta_box[\'name\'].\'_value\', $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box[\'name\'].\'_value\', get_post_meta($post_id, $meta_box[\'name\'].\'_value\', true));
}
}

上面的代码,在前面创建面版后,通过add_post_meta()函数向数据库增加面版信息。这段代码还通过update_post_meta()更新和delet_post_meta()来删除相关信息。

5、添加触发动作。使用动作勾子来调用create_post_meta()函数和save_postdata()函数,代码如下:

add_action(\'admin_menu\', \'create_meta_box\');
add_action(\'save_post\', \'save_postdata\');

好了,到这里,wordpress自定义字段面版就添加成功了,效果如下图:

wordpress自定义字段(3):怎样添加自定义字段面版?

这样,我们在发表文章的时候,就可以添加关键字和文章描述。如果想让前台的代码中能展示这个文章描述和关键字,以利于SEO,我们还要在主题的header.php文件中调用这2个参数。这时,可以通过get_post_meta()函数来调用。代码如下:

$description = get_post_meta($post->ID, "description_value", true);
$keywords = get_post_meta($post->ID, "keywords_value", true);

好了,wordpress如何添加自定义字段面版就介绍到这里,后续我们继续扩展wordpress自定义字段的功能。

本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/13851.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
上一篇 2019年10月12日 16:42
下一篇 2019年10月16日 00:00

相关推荐

  • 为你的WordPress添加图片替换功能 Enable Media Replace。

    在写文章时,我们经常会需要有修改图片的情况,比如上传后发现图片不合适、传错了图片、或者一些过时的图片需要更新,这时候都需要用新的图片替换。但WordPress本身并没有替换功能,想换成新图片,传统的做法是:...

    2022年10月24日 wordpress开发
    020
  • 使用宝塔本地安装wordpress测试站点。

    大多数情况下,我们会直接在云服务器上使用WordPress建站,因为非常的方便,也不需要太多的调试。不过有些时候我们会有一些特殊的需求,比如测试插件、主题、二次开发等,这些操作不适合在正式环境中进行,这时候...

    2022年10月25日 wordpress开发
    023
  • WordPress如何禁用古腾堡编辑器全屏模式。

    在WordPress 5.4版本更新后,为古腾堡编辑器默认采用了全屏的编辑模式,很多朋友可能并不习惯使用全屏模式来写作,那么如何关闭全屏模式呢? 首先随便打开一篇文章,开启古腾堡编辑器 点击右上角的更多按钮 取消勾...

    2022年10月24日 wordpress开发
    070
  • WordPress怎样升级PHP版本(宝塔面板)。

    许多人在配置WordPress环境时,因为不了解或者其他原因,可能会安装老旧版本的PHP,等到网站运行一段时间后,才了解到使用新版本的PHP对网站更好,在本文中WP主题站来分享如何升级WordPress的PHP版本 本教程采用...

    2022年10月24日 wordpress开发
    026
  • WordPress 5.0使用默认经典编辑器方法。

    在今天WordPress推出了5.0版本的更新,其中发生最大的变化就是编辑器由默认的经典编辑器升级到了新的Gutenberg(古腾堡)编辑器 但是在新版编辑器中有很多功能使用起来都发生了很大的改变,使用起来难免有些不习惯...

    2022年10月25日 wordpress开发
    034
  • WordPress修改古腾堡编辑器默认宽度方法。

    对于使用WordPress写博客的人,我们使用最多的就是它的编辑器了,新版的古腾堡编辑器为我们提供了许多特色模块 但是它有一个缺点就是编辑器的宽度并不像经典编辑器那样是全宽的,在很多主题中,后台编辑界面和实...

    2022年10月25日
    037
  • 用WP Downgrade降级WordPress版本。

    我们都知道WordPress是一直在升级的,不断添加新功能和增加安全性,大部分时候我们都应该升级保持最新版,但有时候会出现插件或主题不兼容地情况,如果问题比较严重的话,就需要回退WordPress到上一个版本,今天...

    2022年10月24日 wordpress开发
    016
  • WordPress限制禁用文章页面修订版本方法。

    在使用WordPress写文章时,很多朋友可能会注意到在右侧文档区域有一个修订版本的选项卡,会实时显示你的文章进行多少次的修订 该选项可以用来帮助我们对文章进行版本控制,你可以用它来对比之前与现在的文章,并...

    2022年10月25日
    031

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息