如何更改被覆盖的菜单图标(即被WooCommerce覆盖)

时间:2018-07-16 作者:William Jerome

如何使用自定义图标更改wp管理区域中的菜单图标(来自外部插件,如WooCommerce)?(菜单项实际上是post-type, 所以应该有一些register_post_type 我想是命令)。

2 个回复
SO网友:Sally CJ

WooCommerce通过以下CSS文件设置图标样式:woocommerce/assets/css/menu.css, 这是相应的代码(打印得很好,或者实际上,我是从woocommerce/assets/css/menu.scss):

#adminmenu #toplevel_page_woocommerce .menu-icon-generic div.wp-menu-image::before {
    font-family: \'WooCommerce\' !important;
    content: \'\\e03d\';
}
因此您可以更改font-family 以及content (和其他)属性以适合您的自定义图标。

下面是通过将图标更改为使用background-image:

// We hook to the `admin_enqueue_scripts` action with a priority of `11`, where
// at this point, the default CSS file should have been loaded. But you can or
// should add the CSS rule to your custom CSS file; just make sure it\'s loaded
// *after* the default CSS file.
add_action( \'admin_enqueue_scripts\', function(){
    $css = <<<EOT
#adminmenu #toplevel_page_woocommerce .menu-icon-generic div.wp-menu-image::before {
    content: \' \';
    background: url(\'https://png.icons8.com/dusk/2x/e-commerce.png\') no-repeat center;
    background-size: contain;
}
EOT;

    wp_add_inline_style( \'woocommerce_admin_menu_styles\', $css );
}, 11 );
注:该menu.css 文件已注册并在中排队WC_Admin_Assets::admin_styles() 句柄/名称为woocommerce_admin_menu_styles.

SO网友:mmm

要添加自定义图像,可以使用以下代码。原始图像是用CSS设置的,然后你必须添加自定义CSS来删除它。

add_action("admin_menu", function () {

    foreach ($GLOBALS["menu"] as $position => $tab) {

        if ("woocommerce" === $tab["2"]) {
            $GLOBALS["menu"][$position][6] = "http://server/image.png";
            break;
        }

    }


});

结束

相关推荐

没有wp-admin、wp-config或.htaccess文件夹/文件

这一切都是从我无法将图片上传到我的网站时开始的。媒体下的所有媒体都没有图片或预览;这些图片将是空白的。在列表模式下单击视图将返回内部服务器错误。我决定将SFTP转换到服务器中,看看发生了什么。服务器具有以下结构,对于Unix主机来说非常常规。没有wp admin,wp config。htaccess或任何东西。尽管我是管理员,但我无法创建这些文件夹。默认的媒体上载路径是/nfs/c12/h07/mnt/224753/domains/sitename。com/html/。尽管我是管理员,但我没有此文件夹的读