РАБОТАЮ ВО ВСЕХ ГОРОДАХ РОССИИ

ВРЕМЯ РАБОТЫ С 9:00 ДО 20:00

Как перевести фразы woocommerce, которые не переводятся.

Проблема с переводом интернет магазина на вордпресс.

Не получается перевод Woocommerce на странице оформления заказа двух предложений:

  • Billing details (title) — платежные реквизиты (название)
  • I’ve read and accept the terms&conditions — Я прочитал и принимаю условия & условия

 

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

Но… Куда ж без этого. Случается и так, что некоторые фразы никак невозможно перевести, хотя они есть в файлах .mo и .po.

 

В таких случаях приходится вписывать правильные фразы в файлах Woocommerce. Если вы используете файлы из дочерней темы, то ваши труды сохранятся при последующем обновлении интернет магазина на вордпресс. Но однажды я столкнулась с тем, что этих фраз нигде нет и их можно было перевести только в файлах самого плагина Woocommerce, которые не включались в дочернюю тему. А это означало, что до первого обновления.

Что же делать? Рассмотрим на примере двух фраз.

Решение:

  1. Посмотреть точные фразы здесь:

wp-content\plugins\woocommerce\templates\checkout\payment.php

Это будет полезным, потому что там может оказаться небольшое отличие от образца.

  1. В файл functions.php дочерней темы добавить фильтры для перевода не переведенных фраз.

 

<?php
add_filter
('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');
function
translate_text($translated) {
$translated = str_ireplace('Billing Details', 'Платежная информация', $translated);
$translated = str_ireplace('Please use the shipping calculator to see available shipping methods.', 'Пожалуйста, используйте калькулятор доставки, чтобы увидеть доступные методы доставки.', $translated);
$translated = str_ireplace('I&rsquo;ve read and accept the', 'Я прочитал и принимаю', $translated);
$translated = str_ireplace('<a href="%s" target="_blank">terms &amp; conditions</a>', '<a href="%s" target="_blank">условия &amp; соглашения</a>', $translated);
return
$translated;
}
?>

 

Вот и все. С помощью фильтров можно аналогично добавить и другие непереводимые фразы.

Все для сайтов: 


* Нажимая на кнопку "Отправить" я соглашаюсь с политикой конфиденциальности

Создание сайта

Сделать веб-сайт по приемлемым ценамЗаказать создание сайта под ключ. Цена: недорого.

]]>eTXT]]>

Сервис анализа и проверки траста xt сайтов в Яндексе