为 WordPress 添加主题后台控制选项
文章转至:http://wange.im/
WordPress 主题中,出于方便用户管理和操作的原因,都集成了主题的后台控制选项,今天就举例说明如何给 WordPress 主题添加后台控制选项。
首先,在你的 WordPress 主题目录下新建一个 control.php 文档,然后把以下代码粘贴进去:
"这里是大标题","type" => "heading","desc" => "这里是描述信息"),
array("name" => "这里是小标题","id" => $shortname."_test","std" => "这里是默认值","type" => "text")
);
function mytheme_add_admin() {
global $themename, $shortname, $options;
if ( $_GET['page'] == basename(__FILE__) ) {
if ( 'save' == $_REQUEST['action'] ) {
foreach ($options as $value) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }
foreach ($options as $value) {
if( isset( $_REQUEST[ $value['id'] ] ) ) { update_option( $value['id'], $_REQUEST[ $value['id'] ] ); } else { delete_option( $value['id'] ); } }
header("Location: themes.php?page=control.php&saved=true"); //这里的 control.php 就是这个文件的名称
die;
} else if( 'reset' == $_REQUEST['action'] ) {
foreach ($options as $value) {
delete_option( $value['id'] );
update_option( $value['id'], $value['std'] );
}
header("Location: themes.php?page=control.php&reset=true"); //这里的 control.php 就是这个文件的名称
die;
}
}
add_theme_page($themename." Options", "$themename 设置", 'edit_themes', basename(__FILE__), 'mytheme_admin');
}
function mytheme_admin() {
global $themename, $shortname, $options;
if ( $_REQUEST['saved'] ) echo ''.$themename.' 设置已保存。
';
if ( $_REQUEST['reset'] ) echo ''.$themename.' 设置已重置。
';
?>
之后,再在 functions.php 中 include 以上代码:
require_once(TEMPLATEPATH . '/control.php');
这样,一个超简易的后台就完成了,在 WordPress 后台左侧栏的控制面板 - 外观中可以看到多了一个设置选项。
接下来就是最后一步,调用主题后台的设置,在 WordPress 主题中需要的位置插入以下代码即可:
需要注意的是这个调用的格式,其中 wange 是刚才在 control.php 中开头部分定义的主题简写,后面的 _test 则是在主题设置中定义的数组的 id 键。
文章目录