• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Изменение надписи "Доступно для предзаказа"

Image CMS

ОАА

Опытный
Местный
#1
Доброе утро!

Сайт здесь.
Настраиваю сайт для входа в Яндекс.Маркет. Использую плагин Market Exporter.
Все настроено, но осталось учесть еще одно правило Яндекс:
Для товаров, доставка которых осуществляется дольше двух дней, вы указали статус «под заказ» (элемент со значением «false»). Товар должен быть отгружен по указанной в предложении цене, в сроки, соответствующие статусу предложения (1-2 дня для «в наличии»), и в заявленной комплектации.
У нас отгрузка товара занимает более 1-2 дней. Мне нужно перевести все товары в под заказ.
Вот что я сделала в настройках:



Теперь выводиться надпись "Доступно для предзаказа". Видно здесь.

Подскажите, пожалуйста, как можно изменить этот текст?

И может кто-то поделится опытом торговли под заказ и работы с Яндекс.Маркет?
Буду благодарна любой информации!
 

ОАА

Опытный
Местный
#2
В плагине WooCommerce нашла файл русской локализации woocommerce-ru_RU.po — отредактировала его через программу Poedit и заменила.
Путь: plugins/woocommerce/i18n/languages/woocommerce-ru_RU.po
Пока что я достигла желаемого результата. Меня беспокоит, что при обновлении все слетит, наверное, да?
 

D&B

Администратор
Команда форума
Местный
#3
Увы, слетит. Если только не обновлять переводы.
 

ОАА

Опытный
Местный
#6
Код:
function translate_text($translated) {
    $translated = str_ireplace('Текст для замены', 'Нужный текст', $translated);
  return $translated;
}
Произошло обновление Woocommerce мои манипуляции слетели как и ожидалось.
Испробовала код - не работает:(

Вот, что я вставила в functions.php
Код:
function translate_text($translated) {
    $translated = str_ireplace('Available on backorder', 'ПОД ЗАКАЗ', $translated);
  return $translated;
}
Что не так?
 

searchingman

Гуру
Местный
#7
Произошло обновление Woocommerce мои манипуляции слетели как и ожидалось.
Испробовала код - не работает:(

Вот, что я вставила в functions.php
Код:
function translate_text($translated) {
    $translated = str_ireplace('Available on backorder', 'ПОД ЗАКАЗ', $translated);
  return $translated;
}
Что не так?
Этот код не повешен на хуки.

Попробуйте плагин, он делает тоже самое, что и в коде.
 

ADv

Гуру
Местный
#8
Этот код не повешен на хуки.

Попробуйте плагин, он делает тоже самое, что и в коде.
Точно, сорри.

Код:
add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');
function translate_text($translated) {
    $translated = str_ireplace('Текст для замены', 'Нужный текст', $translated);
  return $translated;
}
 

ОАА

Опытный
Местный
#9
Точно, сорри.

Код:
add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');
function translate_text($translated) {
    $translated = str_ireplace('Текст для замены', 'Нужный текст', $translated);
  return $translated;
}
:(
не работает...
Код:
add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');
function translate_text($translated) {
    $translated = str_ireplace('Available on backorder', 'ПОД ЗАКАЗ', $translated);
  return $translated;
}
 

ОАА

Опытный
Местный
#10