Объединить описание продукта WooCommerce и вкладки дополнительной информации, отображающие описание последними
Aug 19 2020
Я хотел бы спросить дополнительную информацию по этой теме: как объединить вкладки «Описание» и «Дополнительная информация» в WooCommerce?
Моя единственная проблема в том, что я хочу, чтобы сначала отображалась дополнительная информация. Это скриншот:https://i.stack.imgur.com/UTIbf.png Вот ссылка на сайт: https://adisport.hu/termek/adidas-xz-torsion/
Это код, который я использовал в function.php:
// Remove Additional Info tab
add_filter('woocommerce_product_tabs', 'remove_tab_additional_info', 30);
function remove_tab_additional_info($tabs){ unset( $tabs['additional_information'] );
return $tabs; } // Add original Additional Info tab info to the end of the_content add_filter('the_content','add_details_to_content', 10, 1); function add_details_to_content($content){
if ( is_product() ){
global $product; $content = '<div class="product-description">'.$content.'</div>'; ob_start(); ?><div class="product-additional-info"><?php $heading = apply_filters( 'woocommerce_product_additional_information_heading', __( 'Additional information', 'woocommerce' ) );
if ( !empty($heading) ) { ?> <h3><?php echo esc_html( $heading ); ?></h3>
<?php }
do_action( 'woocommerce_product_additional_information', $product ); ?></div><?php $content .= ob_get_clean();
}
return $content;
}
Ответы
LoicTheAztec Aug 19 2020 at 00:12
Попробуйте следующее:
// Remove Additional Info tab
add_filter( 'woocommerce_product_tabs', 'remove_tab_additional_info', 30 );
function remove_tab_additional_info( $tabs ){ unset( $tabs['additional_information'] );
return $tabs; } add_filter( 'the_content', 'add_additional_info_before_content' ); function add_additional_info_before_content( $content ){
if ( is_product() ){
global $product; ob_start(); echo '<div class="product-additional-info">'; $hook = 'woocommerce_product_additional_information_heading';
$heading = apply_filters( $hook, __( 'Additional information', 'woocommerce' ) );
if ( !empty($heading) ) { echo '<h3>' . esc_html( $heading ) . '</h3>';
}
do_action( 'woocommerce_product_additional_information', $product ); echo '</div>'; $content = ob_get_clean() . '<div class="product-description">' . $content . '</div>'; } return $content;
}
Проверено и работает.
Связано: Добавить пользовательский контент в описание продукта WooCommerce