删除 Woocommerce 主商店页面上显示的描述

Remove description from displaying on Woocommerce main shop page

提问人:Connor 提问时间:10/31/2023 更新时间:11/1/2023 访问量:19

问:

我正在尝试:

  1. 删除 Woocommerce 主商店页面上的描述
  2. 在产品下方重新添加描述
  3. 使用子主题的函数 .php 实现此目的

但是,remove_action查询不起作用,描述现在显示在产品的上方和下方。

我不想依靠 css 来隐藏重复的描述,因为我认为这对 SEO 不利。

删除的正确操作是什么?

Todo 这个我已经尝试过了:

add_action('woocommerce_after_main_content', 'add_shop_page_description');
function add_shop_page_description(){ 
  if (is_shop() && !property_exists(get_queried_object(), 'slug')){
    remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
    remove_action( 'woocommerce_archive_description', 'woocommerce_product_archive_description', 10 );
 
    $shop_id = woocommerce_get_page_id('shop');
    $content = get_the_content(null, false, $shop_id);
    echo apply_filters( 'the_content', $content );
  }
}
wordpress woocommerce 子动作

评论


答:

0赞 Snuffy 11/1/2023 #1

在子主题的函数 .php 中添加以下内容。

remove_action( 'woocommerce_archive_description', 'woocommerce_product_archive_description', 10 );
add_action('woocommerce_after_main_content', 'add_shop_page_description');
function add_shop_page_description(){ 
  if (is_product()){  
    $shop_id = wc_get_page_id('shop'); // replace woocommerce_get_page_id() with wc_get_page_id()
    $content = get_the_content(null, false, $shop_id);
    echo apply_filters( 'the_content', $content );
  }
}

评论

0赞 Connor 11/1/2023
在这种情况下,为什么remove_action在函数外部工作,但在函数内部不工作?谢谢。
0赞 Snuffy 11/1/2023
在以后的操作中,您正在尝试删除以前的操作。