在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 相关文章推荐
第十节 抽象方法和抽象类 [10]
Oct 09 PHP
php面向对象全攻略 (二) 实例化对象 使用对象成员
Sep 30 PHP
php下连接mssql2005的代码
Jan 17 PHP
第三章 php操作符与控制结构代码
Dec 30 PHP
php去掉URL网址中带有PHPSESSID的配置方法
Jul 08 PHP
PHP 使用memcached简单示例分享
Mar 05 PHP
PHP自动生成表单代码分享
Jun 19 PHP
php经典算法集锦
Nov 14 PHP
3种php生成唯一id的方法
Nov 23 PHP
thinkphp修改配置进入默认首页的方法
Feb 07 PHP
php-fpm服务启动脚本的方法
Apr 27 PHP
在Laravel中实现使用AJAX动态刷新部分页面
Oct 15 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基础学习之流程控制的实现分析
2013/04/28 PHP
thinkphp3.2实现上传图片的控制器方法
2016/04/28 PHP
ThinkPHP中调用PHPExcel的实现代码
2017/04/08 PHP
关于Jquery操作Cookie取值错误的解决方法
2013/08/26 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
js设置document.domain实现跨域的注意点分析
2015/05/21 Javascript
Bootstrap中datetimepicker使用小结
2016/12/28 Javascript
vue中如何引入jQuery和Bootstrap
2017/04/10 jQuery
axios发送post请求,提交图片类型表单数据方法
2018/03/16 Javascript
python使用reportlab画图示例(含中文汉字)
2013/12/03 Python
python中精确输出JSON浮点数的方法
2014/04/18 Python
python检测远程服务器tcp端口的方法
2015/03/14 Python
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
详解python使用Nginx和uWSGI来运行Python应用
2018/01/09 Python
python使用turtle库绘制时钟
2020/03/25 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2019/05/23 Python
python日期相关操作实例小结
2019/06/24 Python
Python中xml和dict格式转换的示例代码
2019/11/07 Python
Python中断多重循环的几种方式详解
2020/02/10 Python
Kears 使用:通过回调函数保存最佳准确率下的模型操作
2020/06/17 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
python中类与对象之间的关系详解
2020/12/16 Python
CSS3新属性transition-property transform box-shadow实例学习
2013/06/06 HTML / CSS
css3实现3d旋转动画特效
2015/03/10 HTML / CSS
毕业生求职的求职信
2013/12/05 职场文书
机械设计职业生涯规划书
2013/12/27 职场文书
合作意向书模板
2014/03/31 职场文书
党的群众路线教育实践活动宣传标语口号
2014/06/06 职场文书
教师暑期培训感言
2014/08/15 职场文书
教师纪念9.18事件演讲稿范文
2014/09/14 职场文书
经典人生语录分享:不畏将来,不念过去,笑对当下
2019/12/12 职场文书
解决numpy和torch数据类型转化的问题
2021/05/23 Python
关于JS中的作用域中的问题思考分享
2022/04/06 Javascript