Пользовательские строки

В разделе Сайт - Блоки создайте блок с идентификатором mylang cо следующим содержимым

{$strings['Новинки']['en_US'] = 'New arrivals'}
{$strings['Новинки']['ru_RU'] = 'Новые поступления'}
{$strings['Категория']['en_US'] = 'category'}
{$locale = $wa->locale()}
{if !isset($strings[$s]) || !isset($strings[$s][$locale])}
{$s}
{else}
{waLocale::fromArray($strings[$s])}
{/if}

Формат строки

{$strings['Идентификатор строки']['Локаль'] = 'Перевод'}

В дальнейшем в шаблонах можно использовать код вида:

{$wa->block("mylang",['s'=>'Категория'])}

Последнее обновление: 23 марта 2021
Admin поддержка
Эта статья была полезна? Да Нет

4 комментария

  • 1
    Alex Alex 22 марта 2021 11:45 #

    Добрый день, использую данный метод перевода строк, все работает, но в результате в коде генерируются пробелы и отступы, как этого избежать?

    • 1
      Admin Admin поддержка 22 марта 2021 12:02 #

      Убрать лишние переносы в блоке или обернуть в {strip}{/strip} нужный блок.

      • 1
        Alex Alex 22 марта 2021 12:22 #
        Благодарю! Обернул строки переводов в {strip}{/strip} и все стало на свои места.
      • 1
        Alex Alex 23 марта 2021 13:49 #

        Подскажите как переводить слово если оно находится внутри переменной?

        Если вставлять вместо "review for" код переводчика то выдает ошибку.

        {_w('%d review for ','%d reviews for ', $reviews_count)|cat:$product.name|escape}

        Добавить комментарий

        Чтобы добавить комментарий, зарегистрируйтесь или войдите