使用新的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?\' )
) );
}
Is there any way to reorder the help tabs on a screen?
EDIT:
找到了解决方法。默认的帮助选项卡添加在
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.\' )
) );
}
看起来有点像黑客。有更好的方法吗?
最合适的回答,由SO网友:chrisguitarguy 整理而成
正如@Mamaduka所建议的,你可以admin_head-{$page_hook}
并在此处添加上下文帮助。admin_head
在添加默认上下文帮助选项卡后激发。
<?php
add_action( \'admin_head-options-reading.php\', \'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.\' )
) );
}