Используйте фильтр GetText для перевода/изменения строк на кнопках и надписях в WooCommerce для Wordpress.
Можно использовать CSS или JavaScript для изменения ярлыка кнопки, что с этим не так? Да, можно. Однако вы добавляете лишний код и тратите дополнительное время, чтобы отобразить кнопку, когда вместо этого вы можете использовать один из самых удобных фильтров в WordPress — gettext. Используя этот фильтр совместно с textdomain, мы можем изменять текст до загрузки страницы. Если изменяемый текст находится в теме, найдите строку кода load_theme_textdomain ($ domain).
На примере WooCommerce рассмотрим, как изменить текст, который появляется для заголовка «Related Products». Вставьте следующий код в файл functions.php вашей темы:
function translate_string( $translated_text, $untranslated_text, $domain ) { if ( $translated_text == 'Related Products') { $translated_text = __( 'Other Great Products', 'woocommerce' ); } return $translated_text; } add_filter( 'gettext', 'translate_string', 15, 3 );
Этот фильтр применяется к переведённому тексту с помощью функций интернационализации Wordpress.
Код вставляем в functions.php вашей темы. Вы можете взять любое вашего шаблона и перевести, для этого достаточно скопировать раздел case. Код тестировался на многоязычном WooCommerce переведенным плагином Polylang (Adds multilingual capability to WordPress).
Работающий пример:
function my_text_strings( $translated_text, $text, $domain ) { switch ( $translated_text ) { case 'Related products' : $translated_text = __( 'Best hostings', 'woocommerce' ); break; case 'Похожие товары' : $translated_text = __( 'Популярные хостинги', 'woocommerce' ); break; } return $translated_text; } add_filter( 'gettext', 'my_text_strings', 20, 3 );
Удачи и профита!