Этот документ предназначен для разработчиков. Если вы не знакомы с кодом и шаблонами или не умеете решать возможные конфликты, обратитесь к WooExpert или разработчику за помощью. Мы не можем оказывать поддержку по вопросам кастомизации в соответствии с нашей политикой поддержки.
Этот фрагмент кода изменяет текст кнопки «Подробнее» в каталоге товаров для товаров, которых нет в наличии. Это помогает явно показать, что товар распродан. Для товаров с вариациями это не применяется, так как у вариаций может быть разный статус наличия на складе.
Добавьте этот код в файл functions.php дочерней темы или используйте плагин для добавления пользовательских функций, например Code Snippets. Не добавляйте код напрямую в functions.php родительской темы — он будет перезаписан при обновлении темы.
/**
* Изменение текста кнопки «Добавить в корзину» на «Распродано» для товаров, которых нет в наличии
* (кроме товаров с вариациями, у которых остаётся стандартный текст «Выбрать опции»)
*/
function custom_sold_out_button_text( $text, $product ) {
if ( ! $product instanceof WC_Product ) {
return $text;
}
$type = $product->get_type();
// Для товаров с вариациями и вариаций оставляем стандартный текст
if ( $type === 'variable' || $type === 'variation' ) {
return $text;
}
// Если товара нет в наличии — показываем «Распродано»
if ( ! $product->is_in_stock() ) {
return __( 'Распродано', 'woocommerce' );
}
return $text;
}
add_filter( 'woocommerce_product_add_to_cart_text', 'custom_sold_out_button_text', 10, 2 );
