Найти в Дзене
Программист самоучка

PHP в WordPress. Полезный код. Часть 2. Woocommerce

Все больше и больше людей выбирают WooCommerce для создания интернет-магазинов благодаря его простоте и легкости использования. Однако, многие веб мастера часто сталкиваются с проблемой нехватки определенных функций в WooCommerce. В таких случаях, работа с PHP-кодом может помочь избежать дополнительных расходов на настройку плагина. В первой части подборки статей о WordPress, мы рассмотрели несколько полезных PHP функций, которые могут решить многие проблемы пользователей и веб мастеров. В этой части мы продолжим разговор на тему полезных кодов, но теперь с фокусом на WooCommerce. Сейчас я приведу примеры нескольких PHP функций для Woocommerce, которые помогут вам настроить и улучшить свой интернет-магазин. Все примеры, что приведены ниже, надо записывать в файл function.php, или же размещать отдельным плагином. 1. Изменение текста кнопки «Добавить в корзину»:
add_filter( 'woocommerce_product_single_add_to_cart_text', 'change_add_to_cart_button_text' );
function change_add_to_cart_b

Все больше и больше людей выбирают WooCommerce для создания интернет-магазинов благодаря его простоте и легкости использования. Однако, многие веб мастера часто сталкиваются с проблемой нехватки определенных функций в WooCommerce.

В таких случаях, работа с PHP-кодом может помочь избежать дополнительных расходов на настройку плагина.

В первой части подборки статей о WordPress, мы рассмотрели несколько полезных PHP функций, которые могут решить многие проблемы пользователей и веб мастеров. В этой части мы продолжим разговор на тему полезных кодов, но теперь с фокусом на WooCommerce. Сейчас я приведу примеры нескольких PHP функций для Woocommerce, которые помогут вам настроить и улучшить свой интернет-магазин.

Все примеры, что приведены ниже, надо записывать в файл function.php, или же размещать отдельным плагином.

1. Изменение текста кнопки «Добавить в корзину»:

add_filter( 'woocommerce_product_single_add_to_cart_text', 'change_add_to_cart_button_text' );
function change_add_to_cart_button_text( $button_text ) {
$button_text = 'Купить';
return $button_text;
}

Собственно на четвертой строке мы вводим новый текст для кнопки.

2. Изменение/добавление текста перед ценой продукта:

add_filter( 'woocommerce_get_price_html', 'change_price_text' );
function change_price_text( $price ) {
$price_text = 'Цена: ';
$new_price = $price_text . $price;
return $new_price;
}

3. Удаление полей для оформления заказа:

add_filter( 'woocommerce_checkout_fields' , 'remove_checkout_fields');
function remove_checkout_fields( $fields ) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_2']);
return $fields;
}

Собственно сами название полей на строчках 4 и 5.

4. Вставить иконку после заголовка товара в карточке товара:

add_action( 'woocommerce_shop_loop_item_title', 'add_icon_after_title', 5 );
function add_icon_after_title() {
?>
<div class="icon-after-title"><i class="fa fa-exclamation-circle"></i></div>
<?php
}

Здесь мы добавляем дополнительный блок html-кода после заголовка товара, который содержит иконку. Может пригодиться во многих случаях, допустим как-то отметить тот или иной товар.

5. Изменение размера изображения товара:

add_filter( 'woocommerce_get_image_size_thumbnail', 'custom_thumbnail_size' );
function custom_thumbnail_size( $size ) {
$size = array(
'width' => '200', // изменение ширины до 200 пикселей
'height' => '200', // изменение высоты до 200 пикселей
'crop' => 1,
);
return $size;
}

6. Делаем поля в форме заказа WooCommerce необязательными:

add_filter( 'woocommerce_checkout_fields', 'make_customer_fields_optional' );
function make_customer_fields_optional( $fields ) {
$fields['billing']['billing_email']['required'] = false;
$fields['billing']['billing_phone']['required'] = false;
return $fields;
}

В данном примере мы делаем необязательными поля "Email" и "Phone" в форме для ввода данных о клиенте. Чтобы сделать необязательным другое поле, необходимо установить значение параметра 'required' равным false для соответствующего поля в массиве $fields.

7. Устанавливаем минимальную сумму заказа в WooCommerce:

add_action( 'woocommerce_checkout_process', 'minimum_order_amount' );
function minimum_order_amount() {
$minimum = 50;
if ( WC()->cart->total < $minimum ) {
wc_add_notice( sprintf( 'Минимальная сумма заказа составляет %s - пожалуйста, добавьте еще товаров в корзину.', wc_price( $minimum ) ), 'error' );
}
}

В данном примере мы устанавливаем минимальную сумму заказа в размере 50 (можно изменить значение переменной $minimum на нужное вам). Если общая стоимость товаров в корзине меньше этого показателя, то отображается уведомление, что необходимо добавить еще товаров в корзину.

Надеюсь, эти примеры помогут усовершенствовать ваш магазин WooCommerce и обеспечить более удобный пользовательский опыт.