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 相关文章推荐
php 日期时间处理函数小结
Dec 18 PHP
php set_magic_quotes_runtime() 函数过时解决方法
Jul 08 PHP
PHP中MVC模式的模板引擎开发经验分享
Mar 23 PHP
php 生成文字png图片的代码
Apr 17 PHP
php简单浏览目录内容的实现代码
Jun 07 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
Apr 08 PHP
php实现html标签闭合检测与修复方法
Jul 09 PHP
php简单处理XML数据的方法示例
May 19 PHP
PHP实现创建微信自定义菜单的方法示例
Jul 14 PHP
PHP+MySQL实现模糊查询员工信息功能示例
Jun 01 PHP
Laravel框架中缓存的使用方法分析
Sep 06 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
无限级别菜单的实现
2006/10/09 PHP
PHP 登录完成后如何跳转上一访问页面
2014/01/14 PHP
PHP XML Expat解析器知识点总结
2019/02/15 PHP
jquery 输入框数字限制插件
2009/11/10 Javascript
28个JS验证函数收集
2010/03/02 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
2015/12/08 Javascript
学习jQuey中的return false
2015/12/18 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
js获取json中key所对应的value值的简单方法
2020/06/17 Javascript
vue做网页开场视频的实例代码
2017/10/20 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
浅谈angularJs函数的使用方法(大小写转换,拷贝,扩充对象)
2018/10/08 Javascript
Element Input组件分析小结
2018/10/11 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
解决vue-photo-preview 异步图片放大失效的问题
2020/07/29 Javascript
Python爬取十篇新闻统计TF-IDF
2018/01/03 Python
解决pycharm 远程调试 上传 helpers 卡住的问题
2019/06/27 Python
Windows系统Python直接调用C++ DLL的方法
2019/08/01 Python
对Tensorflow中Device实例的生成和管理详解
2020/02/04 Python
python的help函数如何使用
2020/06/11 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
CSS3 按钮边框动画的实现
2020/11/12 HTML / CSS
《藏戏》教学反思
2014/02/11 职场文书
医学院毕业生自荐信范文
2014/03/06 职场文书
考生诚信考试承诺书
2014/05/23 职场文书
HR求职自荐信范文
2014/06/21 职场文书
三八妇女节超市活动方案
2014/08/18 职场文书
十佳好少年事迹材料
2014/08/21 职场文书
2014年初一班主任工作总结
2014/11/08 职场文书
村主任当选感言
2015/08/01 职场文书
小学教师师德培训心得体会
2016/01/09 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
南阳市白酒市场的调查报告
2019/11/08 职场文书
详解Python函数print用法
2021/06/18 Python
浅析Python实现DFA算法
2021/06/26 Python
Win11安装升级时提示“该电脑必须支持安全启动”
2022/04/19 数码科技