你要找的钩子是admin_notices
. 这将在每个管理页面的顶部触发。
如果您希望将通知限制在某些页面,您可以使用:get_current_screen() 获取当前屏幕。
$screen = get_current_screen();
您可以将通知包装在
div
类为“error”或“updated”的元素,以获取红色或黄色样式的通知。
例如:
function wpse51463_admin_notice(){
$screen = get_current_screen();
//If not on the screen with ID \'edit-post\' abort.
if( $screen->id !=\'edit-post\' )
return;
?>
<div class="updated">
<p>
A notice on the post list screen
</p>
</div>
<div class="error">
<p>
An error message
</p>
</div>
<?php
}
add_action(\'admin_notices\',\'wpse51463_admin_notice\');
对于插件设置页面(嵌套在设置选项卡下),屏幕id应为
settings_page_{page-name}
. 当然,您可以通过使用上面的打印每个页面的当前屏幕id来确定页面的id。