如何添加仅在查看插件的管理面板时才显示的收藏图标?

时间:2012-10-07 作者:Volomike

如何添加仅在查看插件管理面板时显示的favicon?我的意思是,我应该拦截什么事件?

2 个回复
最合适的回答,由SO网友:kaiser 整理而成

当您添加管理(子)页面时,您(希望)使用add_*menu_page(). 您只需将其结果保存在变量中即可$hook_suffix.

然后,您只需将回调(添加favicon)添加到the admin_head-{$suffix} hook Source Link. 正如插件屏幕截图所示,还有load-{$hook_suffix}-hooks Source Link, 这是更早一点的。

Edit: 为了更好地理解并“证明”这个钩子确实存在,您可以使用我的»current admin info« plugin, 您可以在GitHub上下载。它会在当前查看的管理页面上显示设置了哪些全局变量,哪些上下文挂钩可用,以及它们的名称。

enter image description here

下面是您如何以程序化的方式进行操作的示例。在一段OOP架构的代码中,您可能会将其保存到一个类变量中,然后使用该变量添加favicon操作/回调。

function wpse61424_register_admin_page()
{
    $hook_suffix = add_menu_page( /* add arguments */ );
    add_action( "admin_head-{$hook_suffix}", \'wpse67424_parttime_favicon\' );
}
function wpse67424_parttime_favicon()
{
    printf(
         \'<link rel="shortcut icon" href="%s" />\'
        ,plugin_dir_url( \'favicon.ico\' )
    );
}

SO网友:westondeboer

您可以将其添加到函数中。php文件和/或将其制作成插件。

function volimike_admin_area_favicon() {
echo \'<link rel="shortcut icon" href="http://link.to/favicon.ico" />\';
}
add_action(\'admin_head\', \'volimike_admin_area_favicon\');

结束

相关推荐

favicon now showing up

我在我的服务器上的/home目录中安装了wordpress,因此设置为您必须访问www.mywordpress。com/home查看我的wordpress,然后访问www.mywordpress。com将带您进入另一个主页。嗯,我进入我的设置,将网站Url更改为www.mywordpress。这样我的wordpress就会成为我的主页。今天,我试着设置一个favicon,它只在url为www.mywordpress时起作用。com/home/whatever,即使你尝试访问www.mywordpress。