问题描述
嗨,我正在构建一个插件选项页面。我真正想要做的是实现可重复的选项卡 (我知道可以使用 Settings API),但是在目前为止,在任何选项面板中都没有看到。我想在飞行中创建新的选项卡,就像管理 UI 中的’Menus’ 部分一样。
有没有什么标准的方法来做到这一点?
最佳解决方案
WordPress 标签是 non-standard,静态 html 标记。您只能在 functions.php
主题文件或插件内添加标记。
<h2 class="nav-tab-wrapper">
<a href="#" class="nav-tab">Tab #1</a>
<a href="#" class="nav-tab nav-tab-active">Tab #2</a>
<a href="#" class="nav-tab">Tab #2</a>
</h2>
在 this helper plugin (WordPress Admin Style)中,您将找到管理区域的默认标记的类引用。全插件快照。以前的快照是位于此底部的细节。点击放大:
次佳解决方案
创建一个您希望在管理页面上创建的选项卡数组。这很可能包含您的插件添加的菜单页。数组键将是页面块,数组值将是制表符文本。
回显您希望在插件中显示标签的功能。
<?php
// Create WP Admin Tabs on-the-fly.
function admin_tabs($tabs, $current=NULL){
if(is_null($current)){
if(isset($_GET['page'])){
$current = $_GET['page'];
}
}
$content = '';
$content .= '<h2 class="nav-tab-wrapper">';
foreach($tabs as $location => $tabname){
if($current == $location){
$class = ' nav-tab-active';
} else{
$class = '';
}
$content .= '<a class="nav-tab'.$class.'" href="?page='.$location.'">'.$tabname.'</a>';
}
$content .= '</h2>';
return $content;
}
$my_plugin_tabs = array(
'my-plugin-overview' => 'Overview',
'my-plugin-settings' => 'Settings',
'my-plugin-uninstall' => 'Uninstall'
);
echo admin_tabs($my_plugin_tabs);
?>
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。