WooCommerce垂直扩展产品标签:标题丢失与重复显示修复求助
解决WooCommerce自定义垂直产品标签的两个问题
问题1:修复标签标题不显示的问题
你的自定义标签函数只输出了内容区域,没有调用标签配置里的title字段,修改垂直标签函数,在循环中加入标题输出即可:
/* 垂直产品标签 */ add_action( 'woocommerce_share', 'custom_woocommerce_output_vertical_product_tabs', 5 ); function custom_woocommerce_output_vertical_product_tabs() { $product_tabs = apply_filters( 'woocommerce_product_tabs', array() ); if ( empty( $product_tabs ) ) { return; } foreach ( $product_tabs as $key => $product_tab ) { // 输出标签标题,可自行调整标签和类名适配垂直样式 echo '<h3 class="vertical-tab-title">' . esc_html( $product_tab['title'] ) . '</h3>'; echo '<div id="tab-' . esc_attr( $key ) . '" class="vertical-tab-content">'; if ( isset( $product_tab['callback'] ) ) { call_user_func( $product_tab['callback'], $key, $product_tab ); } echo '</div>'; } }
问题2:让标签仅在woocommerce_share钩子后展示
WooCommerce默认会在产品详情页的固定位置(woocommerce_after_single_product_summary钩子)输出产品标签,你需要移除这个默认输出动作:
// 移除原位置的默认产品标签输出 remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_product_data_tabs', 10 );
将这段代码添加到自定义代码中,原位置的标签就会消失,只保留woocommerce_share钩子位置的垂直标签。
内容的提问来源于stack exchange,提问作者Dmitry
相关产品推荐
相关产品推荐

