You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WooCommerce使用YITH Brands插件如何将品牌页描述移至商品列表下方

问题原因

  • 你当前的代码挂在init钩子上执行移除动作时机太晚,YITH Brands和Flatsome主题的相关动作已经提前完成挂载,导致移除失效
  • 没有完全匹配原有动作的挂载优先级,remove_action的优先级参数必须和原add_action的参数完全一致才能生效
  • Flatsome主题本身对WooCommerce归档页的钩子做了自定义调整,默认的woocommerce_archive_description钩子的输出逻辑可能被主题重写了

修正后可用代码

if ( class_exists( 'YITH_WCBR' ) && ! function_exists( 'yith_wcbr_move_brand_description' ) ) {
    function yith_wcbr_move_brand_description() {
        // 仅在品牌归档页执行逻辑,避免影响其他商品分类页
        if ( ! is_tax( 'yith_product_brand' ) ) {
            return;
        }
        
        // 移除WooCommerce默认的分类描述输出
        remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
        // 移除YITH Brands原本挂载在顶部的品牌描述,优先级和官方默认的7完全匹配
        remove_action( 'woocommerce_archive_description', array( YITH_WCBR(), 'add_archive_brand_template' ), 7 );
        // 移除Flatsome主题自定义头部钩子挂载的描述输出,适配Flatsome主题结构
        remove_action( 'flatsome_shop_category_header', 'woocommerce_taxonomy_archive_description', 10 );
        remove_action( 'flatsome_shop_category_header', array( YITH_WCBR(), 'add_archive_brand_template' ), 7 );
        
        // 将品牌描述挂载到商品列表下方
        add_action( 'woocommerce_after_shop_loop', array( YITH_WCBR(), 'add_archive_brand_template' ), 5 );
        // 如果你需要同时移动默认的品牌文本描述到下方,可取消注释下面这行
        // add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 6 );
    }
    // 替换为template_redirect钩子,执行时机刚好在主题挂载动作之后、模板渲染之前
    add_action( 'template_redirect', 'yith_wcbr_move_brand_description' );
}

操作注意事项

  • 代码请放在当前使用的Flatsome子主题的functions.php文件中,或者放在自定义代码片段插件中,不要直接修改Flatsome父主题的文件,避免主题更新后代码丢失
  • 部署后清空站点缓存、浏览器缓存,如果你使用了CDN服务也需要清空CDN缓存后再测试效果
  • 如果仍然有残留的顶部描述,可以通过浏览器开发者工具定位对应元素的类名,确认输出对应的钩子后补充对应的移除动作即可

内容的提问来源于stack exchange,提问作者Tayfun Kazancı

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 16:06:03