К сожалению, в Woocommerce не предусмотрено изменение тех или иных текстовых значений по умолчанию. Например слово «купон» иногда требуется переименовать на какое-то другое слово. Большинство значений можно изменить с помощью плагинов, но вы можете добавить этот код в свой файл functions.php. В данном случае мы изменили слово «купон» на «промокод». Изменения коснутся только видимой части сайта, т.е. для посетителя. В административной панели текст не изменится.

Как переименовать слово купон в Woocommerce
add_filter( 'gettext', 'woocommerce_rename_coupon_field_on_cart', 10, 3 );
add_filter( 'gettext', 'woocommerce_rename_coupon_field_on_cart', 10, 3 );
// Меняем слово Купон на Промокод на странице корзины
function woocommerce_rename_coupon_field_on_cart( $translated_text, $text, $text_domain ) {
	// не меняет текст в админке
	if ( is_admin() || 'woocommerce' !== $text_domain ) {
		return $translated_text;
	}
	if ( 'Coupon:' === $text ) {
		$translated_text = 'Promo code:';
	}

	if ('Coupon has been removed.' === $text){
		$translated_text = 'Promo code has been removed.';
	}

	if ( 'Apply coupon' === $text ) {
		$translated_text = 'Apply promo code';
	}

	if ( 'Coupon code' === $text ) {
		$translated_text = 'Promo code';	
	} 

	return $translated_text;
}

// Меняем слово Купон на Промокод на странице заказа
add_filter( 'woocommerce_checkout_coupon_message', 'woocommerce_rename_coupon_message_on_checkout' );
function woocommerce_rename_coupon_message_on_checkout() {
	return 'Have a promo Code?' . ' <a href="#" class="showcoupon">' . __( 'Click here to enter your promo code', 'woocommerce' ) . '</a>';
}

add_filter('woocommerce_coupon_error', 'rename_coupon_label', 10, 3);
add_filter('woocommerce_coupon_message', 'rename_coupon_label', 10, 3);
function rename_coupon_label($err, $err_code=null, $something=null){

	$err = str_ireplace("Coupon","Promo code ",$err);

	return $err;
}

// В деталях заказа изменяем слово купон на Промокод применён
add_filter( 'woocommerce_cart_totals_coupon_label', 'woocommerce_change_coupon_label',10, 3 );
function woocommerce_change_coupon_label() {
    echo 'Promo code applied';
}

Не забудьте сделать перевод измененных строк с помощью плагина Loco Translate или написать текст сразу на нужном языке.

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

Комментарии

3 Комментариев

    1. Если код у вас не сработал, для общей картины необходимо указать подробности. Какой участок кода не сработал, на какой именно странице? Установлены для дополнительные плагины для генерации купонов, какая версия Woocommerce? Куда вставляли код? Меняли ли текст в коде на свой? Для последней версии Woocommerce 5.9.0 код рабочий.

Оставьте комментарий

Комментарии, считающиеся спамом или исключительно рекламные по своему содержанию, будут удалены. Допускается включение ссылки на соответствующий контент, но текст должен иметь отношение к теме поста. Также будут удалены анонимные, оскорбительные, содержащие ненормативную лексику, вводящие в заблуждение или клеветнические комментарии.

Для публикации кода в комментариях используйте следующие шорткоды -
[php]ваш код[/php] - для PHP, [css]ваш код[/css] - для CSS, [code lang="js"]ваш код[/code] - для HTML или JS, указав соответствующий lang.

Ваш адрес email не будет опубликован. Обязательные поля помечены *