WordPress中给文章添加自定义字段及后台编辑功能区域

yipeiwu_com5年前PHP代码库

add_post_meta
add_post_meta 函数是 WordPress 中用来给文章或页面添加自定义字段值的一个函数,
其用法与在编写文章时在文章编写界面中利用自定义栏目面板为文章添加自定义字段值的效果是一样的。

add_post_meta函数描述
为文章添加自定义字段。
常见的使用有:文章浏览次数、喜欢按钮、seo插件等常用插件就是使用的自定义字段功能。

参数详解

add_post_meta($post_id, $meta_key, $meta_value,$unique);

$post_id
要添加自定义字段的文章或页面的ID值
$meta_key
自定义字段的键值(名字)
$meta_value
自定义字段的值
$unique
如果已经有相同名字的自定义字段,是否重复添加重名的自定义字段,true为不允许,false为允许
函数使用实例

//为ID为1的文章添加_postviews自定义字段,值为99
add_post_meta(1, "_postviews", "99");
var_dump(get_post_meta(1));echo"<br />";
//为ID为1的文章添加_postviews自定义字段,值为999,并允许重复自定义字段名称
add_post_meta(1, "_postviews", 999,false);
var_dump(get_post_meta(1));echo"<br />";

演示效果:

array(1) {
 ["_postviews"]=>
 array(1) {
  [0]=>
  string(2) "99"
 }
}

array(1) {
 ["_postviews"]=>
 array(2) {
  [0]=>
  string(2) "99"
  [1]=>
  string(3) "999"
 }
}


//不允许重复自定义字段的代码
add_post_meta(1, "_postviews", "996",true);
var_dump(get_post_meta(1));echo"<br />";
add_post_meta(1, "_postviews", "997",true);
var_dump(get_post_meta(1));echo"<br />";
array(1) {
 ["_postviews"]=>
 array(1) {
  [0]=>
  string(3) "996"
 }
}


array(1) {
 ["_postviews"]=>
 array(1) {
  [0]=>
  string(3) "996"
 }
}

add_meta_box
add_meta_box 是 WordPress 进阶使用的一个函数,能用到这个函数那说明你已经比一个普通的博主更了解这个世界瞩目的博客程序了,至少你在它身上已经花了不少功夫了。能用到它,说明你现在正在折腾一个你自己的主题、插件,甚至是在折腾 WordPress 后台了。
好像已经赘述的够多了,下面我们以一个进阶的角度去说明一下这个函数怎么用。

add_meta_box 函数说明
add_meta_box 函数是被用来在文章编辑等页面添加一个设置的区域的函数。

20151219173817018.jpg (299×335)

参数说明

<?php
 add_meta_box( $id, $title, $callback, $post_type, $context, $priority, $callback_args );
 ?>

$id HTML 代码中设置区域中id属性的值
$title 区域中的标题名称
$callback 添加的设置区域的显示函数(回调函数)
$post_type 在 post 还是 page 的编辑页面中显示
$context 设置区域的显示位置,主编辑区、边栏、其他
$priority 设置区域显示的优先级
$callback_args 回调函数接受的附加参数
使用实例

function add_xz_box (){//添加设置区域的函数
add_meta_box('xz_box_1', 'add_meta_box 测试', 'xz_box_1','post','side','high',array('str1','str2'));
};
//在'add_meta_boxes'挂载 add_xz_box 函数
add_action('add_meta_boxes','add_xz_box');
 
 
function xz_box_1($post,$boxargs){//显示设置区域的回调函数
 echo"add_meta_box 测试";
};

相关文章

php基于自定义函数记录log日志方法

本文实例讲述了php基于自定义函数记录log日志方法。分享给大家供大家参考,具体如下: /** * 记录错误日志 * @param 日志内容 $res */ function...

PHP中的array数组类型分析说明

php的数组的key 可以是string类型也可以是integer类型。如果key为一个float类型,会自动的转化为integer类型。 如果没有为一个value指定一个key,int...

PHP基于mcript扩展实现对称加密功能示例

本文实例讲述了PHP基于mcript扩展实现对称加密功能。分享给大家供大家参考,具体如下: 1.对称加密主要利用相同的密钥来实现,而非对称加密利用公钥和私钥来加密,比较而言对称加密速度快...

用PHP将数据导入到Foxmail的实现代码

用PHP将数据导入到Foxmail的实现代码

最近小阳做了一个PHP同学录,同学们自己在那里添加或修改姓名、邮箱、OICQ等信息,并保存在mySQL数据库里。某日小阳突然想到,如果能用PHP生成一个文件,供同学们下载并把这些资料导入...

PHP接口继承及接口多继承原理与实现方法详解

本文实例讲述了PHP接口继承及接口多继承原理与实现方法。分享给大家供大家参考,具体如下: 在PHP的接口中,接口可以继承接口。虽然PHP类只能继承一个父类(单继承),但是接口和类不同,接...