Задача. Необходимо в на сайте с Woocommerce заменить текст кнопки «В корзину» (Добавить в корзину, Просмотр корзины, Оформить заказ, Add to cart).
Решение. Для изменения текста или замены на иконку в кнопке заказа товара вставляем в functions.php
Код №1 или Код №2, если необходимо изменить кнопки только в некоторых товарах.
Содержание
Изменение текста кнопки заказа
1
2
3
4
5
6
7
8
9
10
|
// Custom text Add to cart
add_filter( ‘woocommerce_product_single_add_to_cart_text’, ‘woo_custom_cart_button_txt’ ); //
add_filter( ‘woocommerce_product_add_to_cart_text’, ‘woo_custom_cart_button_txt’ );
function woo_custom_cart_button_txt() {
return __( ‘Новая подпись кнопки В корзину’, ‘woocommerce’ );
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
// Текст кнопки заказа товара по id товара
function woo_unique_add_to_cart_text() {
global $product;
if( $product–>id == 11 ){
return __( ‘Купить сейчас’, ‘woocommerce’ ); // Для товара с id=11
} elseif($product–>id == 12){
return __( ‘Купить по лучшей цене’, ‘woocommerce’ ); // Для товара с id=12
}
else{
return __( ‘В корзину’, ‘woocommerce’ ); // Для остальных
}
}
add_filter( ‘woocommerce_product_single_add_to_cart_text’, ‘woo_unique_add_to_cart_text’, 10, 3 );
|
Также можно использовать плагин Customizer for WooCommerce — позволяет настраивать различные названия кнопок, вкладок и пр. в WC.
Замена текста кнопки заказа на иконку
Когда нужно было заменить текст кнопки заказа на иконку, то способы выше не подошли, т.к. они выводят иконку вида <i class="fa fa-shopping-cart"></i>
как текст, а не как html-код.
Решение 1. Для замены текста кнопки добавления в корзину на иконку:
- В файле плагина
woocommerce/templates/loop/add-to-cart.php
(этот файл нужно скопировать в папку с темой в такойже иерархии папок и потом его редактируем) - Заменить
esc_html( $product->add_to_cart_text() )
наsprintf('<i class="fa fa-shopping-cart"></i>')
.