从 WooCommerce Storefront 主题中删除面包屑

Remove breadcrumbs from WooCommerce Storefront theme

为了从 Storefront 主题中删除面包屑,documentation 声明在 functions.php 中添加以下内容:

remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20 );

我在 Storefront 的子主题中尝试了这个,但它不起作用。追溯woocommerce_breadcrumb,好像是在storefront_content_top动作中添加的(在文件<storefront_dir>/inc/woocommerce/storefront-woocommerce-template-hooks.php中。我注释掉了相应的行,确实面包屑被隐藏了。

但是,为了以正确的方式做到这一点,我尝试使用

从子主题中禁用它
remove_action( 'storefront_content_top', 'woocommerce_breadcrumb', 10 );

但它不起作用。我应该澄清一下,我在一个没有其他代码的新子主题中对此进行了测试。

如何禁用子主题的面包屑?

试试这个:

add_filter( ‘woocommerce_get_breadcrumb’, ‘__return_false’ );
remove_action( 'woocommerce_before_main_content','woocommerce_breadcrumb', 20, 0);
.breadcrumb{
     display: none;
}

将以下代码段复制并粘贴到您的 functions.php 文件中。

add_action( 'init', 'z_remove_wc_breadcrumbs');

function z_remove_wc_breadcrumbs() {
    remove_action( 'storefront_before_content', 'woocommerce_breadcrumb', 10);
}

从 Storefront 2.3.1 开始尝试这个

add_action('init', 'dp_remove_wc_breadcrumbs');

function dp_remove_wc_breadcrumbs(){
    remove_action('storefront_before_content', 'woocommerce_breadcrumb', 10);
};