Чтобы скрыть только размеры (но не вес) , есть 2 способа заставить его работать.
1) с помощью крючков (здесь составные фильтрующие крючки ):
Глядя на шаблон, который отображает измерение в отдельных продуктах, вы можете увидеть эту строку:
<?php if ( $display_dimensions && $product->has_dimensions() ) : ?>
Тогда, если вы посмотрите на WC_Product
has_dimensions()
метод , вы увидите эту строку (где $this
- это WC_Product
экземпляр объекта) :
return ( $this->get_length() || $this->get_height() || $this->get_width() ) && ! $this->get_virtual();
Таким образом, когда длина, высота и символ с пустыми (или false), метод возвращает false…
Следующий код, использующий составные крючки , будет скрывать размеры на вкладке «Дополнительная информация» только на отдельных страницах продукта:
add_filter( 'woocommerce_product_get_width', 'hide_single_product_dimentions', 25, 2 );
add_filter( 'woocommerce_product_get_height', 'hide_single_product_dimentions', 25, 2 );
add_filter( 'woocommerce_product_get_length', 'hide_single_product_dimentions', 25, 2 );
function hide_single_product_dimentions( $value, $product ){
// Only on single product pages
if( is_product() )
$value = '';
return $value;
}
Код помещается в файл function.php вашей активной дочерней темы (или активной темы) . Проверено и работает.
Чтобы скрыть вес (только для информации) используйте этот составной код крючка:
add_filter( 'woocommerce_product_get_weight', 'hide_single_product_weight', 25, 2 );
function hide_single_product_weight( $value, $product ){
// Only on single product pages
if( is_product() )
$value = '';
return $value;
}
2) Переопределение шаблонов Woocommerce через вашу активную тему:
Первое чтение: Переопределение шаблона Woocommerce через тему .
В нем объясняется, как скопировать шаблон в вашу тему перед его редактированием.
Здесь соответствующий шаблон single-product/product-attributes.php
.
Вам придется удалить этот блок из кода шаблона (от строки 33 до строки 38):
<?php if ( $display_dimensions && $product->has_dimensions() ) : ?>
<tr>
<th><?php _e( 'Dimensions', 'woocommerce' ) ?></th>
<td class="product_dimensions"><?php echo esc_html( wc_format_dimensions( $product->get_dimensions( false ) ) ); ?></td>
</tr>
<?php endif; ?>