WooCommerce分类描述位置调整:父分类生效子分类无效问题求助
解决WooCommerce分类描述仅父分类生效的问题
问题说明
产品分类的Term-Description当前显示在分类顶部,需移至产品列表底部。使用以下代码后,仅父分类页面生效,子分类页面无效果:
add_action('woocommerce_archive_description', 'custom_archive_description', 2 ); function custom_archive_description(){ if( is_product_category() ) : remove_action('woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 ); add_action( 'woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 5 ); endif; }
解决方案
原代码依赖woocommerce_archive_description钩子调整动作,该钩子在子分类页面触发时,默认的描述输出逻辑可能已执行,导致移除动作失效。改用template_redirect钩子(页面加载早期触发),确保所有分类页面(父/子分类)都能提前完成动作重定向:
add_action('template_redirect', 'custom_move_category_description'); function custom_move_category_description() { if (is_product_category()) { // 移除默认位置的分类描述 remove_action('woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10); // 将描述添加到产品列表底部 add_action('woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 5); } }
替换原代码后,父分类和子分类页面的分类描述都会被移至产品列表底部。
内容的提问来源于stack exchange,提问作者Dodo
相关产品推荐
相关产品推荐

