使用新WP_Screen
类可以非常轻松地向屏幕添加帮助文本。
<?php
add_action( "load-{$somepage}", 'wpse_load_reading' );
function wpse_load_reading()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'Help Content' )
) );
}
这对于自定义页面非常有用。但是,假设在现有屏幕上添加帮助标签时options-reading.php
,会有些奇怪。
load-options-reading.php
在内置WP页面添加其自己的帮助选项卡之前,将触发该挂钩。换句话说,在现有屏幕上添加帮助选项卡会将所有内置帮助选项卡推到列表底部。
如果您想尝试一下,这是一些代码:
<?php
add_action( "load-options-reading.php", 'wpse_load_reading2' );
function wpse_load_reading2()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'Why is this tab above the built in tab?' )
) );
}
有什么方法可以重新排列屏幕上的帮助选项卡?
编辑:
找到了解决此问题的方法。在admin-header.php
包含文件之前,将添加默认的帮助选项卡。
因此,您可以挂钩到load-{$built_in_page}
,然后从那里挂钩一个admin_head
用于设置帮助选项卡的功能。
<?php
add_action( 'load-options-reading.php', 'wpse45210_load' );
function wpse45210_load()
{
add_action( 'admin_head', 'wpse45210_add_help' );
}
function wpse45210_add_help()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'This tab is below the built in tab.' )
) );
}
似乎有点像黑客。有没有更好的办法?
WP_Screen::$_help_tabs
是私人的。不幸的是,无法直接访问它。看到我的编辑,我做了您的第三个建议!