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


Posted in PHP onDecember 19, 2015

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 函数是被用来在文章编辑等页面添加一个设置的区域的函数。

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

参数说明

<?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 相关文章推荐
一个程序下载的管理程序(一)
Oct 09 PHP
表单复选框向PHP传输数据的代码
Nov 13 PHP
解析php中const与define的应用区别
Jun 18 PHP
php生成excel文件的简单方法
Feb 08 PHP
php中FTP函数ftp_connect、ftp_login与ftp_chmod用法
Nov 18 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
PHP里面把16进制的图片数据显示在html的img标签上(实现方法)
May 02 PHP
PHP实现求解最长公共子串问题的方法
Nov 17 PHP
PHP ADODB生成下拉列表框功能示例
May 29 PHP
laravel 获取当前url的别名方法
Oct 11 PHP
php面向对象基础详解【星际争霸游戏案例】
Jan 23 PHP
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
Apr 16 PHP
利用Fix Rss Feeds插件修复WordPress的Feed显示错误
Dec 19 #PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
Dec 19 #PHP
CentOS下与Apache连接的PHP多版本共存方案实现详解
Dec 19 #PHP
PHP程序中使用adodb连接不同数据库的代码实例
Dec 19 #PHP
php实现面包屑导航例子分享
Dec 19 #PHP
php实现倒计时效果
Dec 19 #PHP
Thinkphp实现自动验证和自动完成
Dec 19 #PHP
You might like
PHP开发大型项目的一点经验
2006/10/09 PHP
PHP实现的简单mock json脚本分享
2015/02/10 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
PHP 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
Yii输入正确验证码却验证失败的解决方法
2017/06/06 PHP
js对象的比较
2011/02/26 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
2014/07/29 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
利用ES6的Promise.all实现至少请求多长时间的实例
2017/08/28 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
微信小程序实现文字跑马灯效果
2020/05/26 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
Nodejs技巧之Exceljs表格操作用法示例
2019/11/06 NodeJs
[49:11]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第二场 12.20
2020/12/23 DOTA
详解Python中的from..import绝对导入语句
2016/06/21 Python
Python时间的精准正则匹配方法分析
2017/08/17 Python
Python3 模块、包调用&amp;路径详解
2017/10/25 Python
让你Python到很爽的加速递归函数的装饰器
2019/05/26 Python
对python 中re.sub,replace(),strip()的区别详解
2019/07/22 Python
Python2和Python3中@abstractmethod使用方法
2020/02/04 Python
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
乌克兰品牌化妆品和香水在线商店:Bomond
2020/01/14 全球购物
Java servlet面试题
2012/03/04 面试题
旅游管理专业学生求职信
2013/09/28 职场文书
十八大闭幕感言
2014/01/22 职场文书
财务部副经理岗位职责
2014/03/14 职场文书
幼儿园教师自我鉴定
2014/03/20 职场文书
设立有限责任公司出资协议书
2014/11/01 职场文书
原告离婚代理词
2015/05/23 职场文书
商务英语邮件开头问候语
2015/11/10 职场文书
《月球之谜》教学反思
2016/02/20 职场文书
使用这 6个Vue加载动画库来减少我们网站的跳出率
2021/05/18 Vue.js
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis