在WordPress中获取数据库字段内容和添加主题设置菜单


Posted in PHP onJanuary 11, 2016

get_option() 函数使用技巧
get_option()这个函数,实际上我们在整合后台功能的时候经常会用到的一个函数,主要用来从 WordPress 博客数据库 option 表中取得我们想要的字段内容的一个函数,在目前大部分的主题中,只要是主题集成了后台控制页面,也大都用到了这个函数,虽然 WP 给了我们很多方法去临时存储我们对主题的设置,但是用比较稳定的数据库去存储主题设置还是大部分主题作者的首选。

get_option() 函数的解释、用法网上还是有很多中文文献的,包括官方文档该函数也有中文版的解释,因为使用起来简单,思路比较清晰所以这里就不过多解释。
官方API :get_option
直接备忘用法

使用技巧
通常我们取设置的时候,会加一个判断,因为我们不知道主题是不是第一次在系统中安装,

if (!get_option('xiangzi')){//判断是否存在
 $default_xiangzi = array (//先设置一个默认值
 'title'=>'博客',
 'name'=>'翔子',
 'url'=>'pangbu.com');
 update_option('xiangzi', $default_xiangzi);
 //设置option的默认值
}
$xiangzi = get_option('xiangzi');//获取设置

很凑巧,出于某种原因 WP 官方为我们增设了get_option 函数的第二个参数
所以我们可以这样

$default_xiangzi = array (//先设置一个默认值
 'title'=>'博客',
 'name'=>'翔子',
 'url'=>'pangbu.com')
$xiangzi = get_option('xiangzi',$default_xiangzi);
//这样是不是很简单?

add_theme_page()函数-添加你的主题设置菜单
也许你会觉得,Wordpress 官方默认主题,是一个很蛋疼的主题,样式丑陋、并且功能简陋,有一种只有陋室铭这种励志类的文章才能鼓励你用下去的感觉,也许你会觉得这个主题除了给那些不会安装主题的菜菜菜菜菜鸟用之外几乎毫无用处,那你就错了。官方默认主题的最大用处就是有很大的研究价值,至少我目前的 WP 主题知识大部分都是通过研究默认主题得来的,今天研究的是add_theme_page()函数。

描述
add_theme_page()函数,在 WordPress 后台添加页面。在这里我们一般都是为了添加设置页面才用到该函数,当然你要是闲的蛋疼的话,你可以添加诸如个人说明的页面在后台。

使用

 

<?php 
add_theme_page( $page_title, $menu_title, $capability, $menu_slug, $function); 
//page_titile-title标签的内容 
//menu_title-显示在后台左边菜单的标题 
//capability-访问这个页面需要的权限 
//menu_slug-别名,需要独一无二哦 
//function-执行的函数 
?>

$page_title, $menu_title, $capability, $menu_slug, $function 这几个参数比较常用。

因为add_theme_page()函数使用起来实在是太简单了,所以我们还是直接上代码吧。

实例

function xz_theme_options_add_page() {
 $theme_page = add_theme_page(
 '主题设置', //页面Titlee
 '主题设置', // 在后台菜单中显示的名字
 'edit_theme_options',   // 选项放置的位置
 'theme_options',    // 别名,也就是get传送的参数
 'xz_theme_op_page' //调用显示内容调用的函数
 );
}
function xz_theme_op_page (){//内容显示函数
 echo "我是主题编辑页面";
}
add_action( 'admin_menu', 'xz_theme_options_add_page' );

效果

在WordPress中获取数据库字段内容和添加主题设置菜单

添加后台菜单效果

PHP 相关文章推荐
十天学会php之第七天
Oct 09 PHP
PHP 分页类(模仿google)-面试题目解答
Sep 13 PHP
php打造属于自己的MVC框架
Mar 07 PHP
windows下zendframework项目环境搭建(通过命令行配置)
Dec 06 PHP
详解PHP中的PDO类
Jul 06 PHP
php实现模拟post请求用法实例
Jul 11 PHP
php上传图片生成缩略图(GD库)
Jan 06 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
Oct 11 PHP
php的4种常用运行方式详解
Dec 22 PHP
thinkPHP5框架实现基于ajax的分页功能示例
Jun 12 PHP
实现PHP中session存储及删除变量
Oct 15 PHP
PHP类与对象后期静态绑定操作实例详解
Dec 20 PHP
[原创]PHP简单开启curl的方法(测试可行)
Jan 11 #PHP
详解YII关联查询
Jan 10 #PHP
PHP 设计模式系列之 specification规格模式
Jan 10 #PHP
PHP生成各种常见验证码和Ajax验证过程
Jan 10 #PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 #PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 #PHP
PHP基于单例模式实现的mysql类
Jan 09 #PHP
You might like
PHP中文汉字验证码
2007/04/08 PHP
PHP之COOKIE支持详解
2010/09/20 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
2016/04/02 PHP
yii框架redis结合php实现秒杀效果(实例代码)
2017/10/26 PHP
js png图片(有含有透明)在IE6中为什么不透明了
2010/02/07 Javascript
JS实现的一个简单的Autocomplete自动完成例子
2014/04/16 Javascript
jQuery中filter()方法用法实例
2015/01/06 Javascript
浅析js绑定事件的常用方法
2016/05/15 Javascript
微信小程序实现图片自适应(支持多图)
2017/01/25 Javascript
详解vue项目中如何引入全局sass/less变量、function、mixin
2018/06/02 Javascript
javascript实现blob加密视频源地址的方法
2019/08/08 Javascript
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
python3 shelve模块的详解
2017/07/08 Python
python实现在cmd窗口显示彩色文字
2019/06/24 Python
Python列表对象实现原理详解
2019/07/01 Python
pandas DataFrame 警告(SettingWithCopyWarning)的解决
2019/07/23 Python
浅谈Python_Openpyxl使用(最全总结)
2019/09/05 Python
使用Tkinter制作信息提示框
2020/02/18 Python
Python获取指定网段正在使用的IP
2020/12/14 Python
尤为Wconcept中国官网:韩国设计师品牌服饰
2019/01/10 全球购物
Linux面试经常问的文件系统操作命令
2015/11/05 面试题
EJB发布WEB服务一般步骤
2012/10/31 面试题
个性大学生自我评价
2013/12/04 职场文书
公司门卫的岗位职责
2014/02/19 职场文书
合作意向书模板
2014/03/31 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
拉拉队口号
2014/06/16 职场文书
大学生国庆节65周年演讲稿范文
2014/09/25 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
初中作文评语集锦
2014/12/25 职场文书
银行优秀员工推荐信
2015/03/24 职场文书
2016年端午节红领巾广播稿
2015/12/18 职场文书
创业计划书之家教中心
2019/09/25 职场文书
Nginx tp3.2.3 404问题解决方案
2021/03/31 Servers
Apache SeaTunnel实现 非CDC数据抽取
2022/05/20 Servers