Недавно пришлось делать тоже самое, решил тут догнать ответ на вопрос
/**
* Изменяет отображение названий атрибутов в выпадающем списке для выбора вариаций товаров
*/
add_filter( 'woocommerce_variation_option_name', 'air_variation_option_name', 10, 1 );
function air_variation_option_name( $name ) {
if ( ! is_archive() ) { // проверяем, является ли текущая страница архивной страницей
return $name;
}
global $product;
if ( ! is_a( $product, 'WC_Product' ) || ! $product->is_type( 'variable' ) ) {
return $name;
}
$taxonomy = wc_attribute_taxonomy_name( str_replace( 'attribute_', '', $name ) );
$attribute = $product->get_variation_attribute( $taxonomy );
if ( ! empty( $attribute ) ) {
$name = $attribute;
}
return $name;
}
Правда я сделал без условия if ( ! is_archive() ), а глобально, уберите условие если оно не нужно. Кстати, у вас же не только страница категорий, есть еще теги и поисковая выдача, учтите это.
Недавно пришлось делать тоже самое, решил тут догнать ответ на вопрос
Правда я сделал без условия if ( ! is_archive() ), а глобально, уберите условие если оно не нужно. Кстати, у вас же не только страница категорий, есть еще теги и поисковая выдача, учтите это.