add_theme_page()函数
add_theme_page()函数会在后台“外观”菜单项下面新建一个菜单项,有助于我们自己修改主题时功能的扩展。
语法结构
add_theme_page( $page_title, $menu_title, $capability, $menu_slug, $function);
page_titile title标签的内容
menu_title 显示在后台左边菜单的标题
capability 访问这个页面需要的权限
menu_slug 别名,需要独一无二哦自己命名
function 执行的函数
例子:
# 加入主题的functions.php即可 function register_theme_submenu(){ add_theme_page('Theme Submenu','主题设置','administrator','my_slug','theme_submenu'); } function theme_submenu(){ echo 'lol'; } add_action('admin_menu','register_theme_submenu');
更详细的例子
<?php function getOptions() { $options = get_option('my_theme_options'); if (!is_array($options)) { $options['meta_keywords'] = ''; $options['meta_description'] = ''; update_option('my_theme_options', $options); } return $options; } /* 初始化 */ function init() { if($_SERVER['REQUEST_METHOD']=="POST") { $options = getOptions(); $options['meta_keywords'] = stripslashes($_POST['meta_keywords']); $options['meta_description'] = stripslashes($_POST['meta_description']); update_option('my_theme_options', $options); } else { getOptions(); } add_theme_page("我的主题选项", "我的主题选项", 'edit_theme_options', "my_theme_panel_ss", 'display'); } /* 界面 */ function display() { $options = getOptions(); ?> <form action="#" method="post" enctype="multipart/form-data" name="op_form" id="op_form"> <div class="wrap"> <h1>当前主题选项</h1> <p>相关描述</p> <table class="form-table" role="presentation"> <tbody> <tr> <th scope="row"><label for="meta_keywords">主题关键词</label></th> <td><input name="meta_keywords" type="text" id="meta_keywords" value="<?php echo($options['meta_keywords']); ?>" class="regular-text"></td> </tr> <tr> <th scope="row"><label for="meta_description">主题描述</label></th> <td> <input name="meta_description" type="text" value="<?php echo($options['meta_description']); ?>" class="regular-text"> <p class="description" id="tagline-description">用简洁的文字描述本站点。</p> </td> </tr> </tbody> </table> <input type="submit" name="input_save" value="保存" /> </div> </form> <?php } add_action('admin_menu', 'init'); ?>
修改时间 2023-11-14
声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。