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

yipeiwu_com6年前PHP代码库

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' );

效果

2016111144058498.png (444×668)

添加后台菜单效果

相关文章

无需重新编译php加入ftp扩展的解决方法

首先,进入源码目录cd php-5.2.13/ext/ftp #运行phpize生成configure/usr/local/php/bin/phpize #编译,指定php-config...

PHP变量内存分配问题记录整理

今天碰到一个关于php变量内存分配的问题,记录一下。如下这段代码: 复制代码 代码如下: $a = array ( 'str' => 1, 'child' => 2 ); $...

PHP中文分词的简单实现代码分享

当然, 本文不是要对中文搜索引擎做研究, 而是分享如果用 PHP 做一个站内搜索引擎。 本文是这个系统中的一篇。 我使用的分词工具是中科院计算所的开源版本的 ICTCLAS。 另外还有开...

PHP区块查询实现方法分析

本文实例讲述了PHP区块查询实现方法。分享给大家供大家参考,具体如下: 分块查询是介于顺序查询和折半查询之间的一种查询方法。 其实折半查询就是每次折半的分块查询,那么分块查询就是把数组分...

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

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