Перейти к содержанию
Форум поддержки пользователей VamShop

1.Собственные языковые стринги в отдельный файл


wcp

Рекомендуемые сообщения

Несколько версий назад провозился с восстановлением языковых правок, сделанных в lang_russian.conf, который убивается при накатывании обновления, потом лень восстановления победила над ленью переноса :)

Итак, у вас наверняка что-то будет изменяться в магазине в плане языка - свои метки, фразы и т.д. Чтобы не терять это все после обновления версии и не лицезреть в магазине пустые боксы и менюшки, давайте сделаем следующее:

- в папке lang создадим новый файл lang_метка.conf, где "метка" - любое понятное вам слово, например, домен магазина, ваше имя, любимое матерное слово )

- в файл переносим все нужные нам кастомные стринги, скажем, в секцию [mylang]

- далее нужно подключить этот языковой файл во всех нужных местах шаблона: index.html, боксы и пр.:

{config_load file="$language/lang_метка.conf" section="mylang"}

Причем делать это лучше после существующего подключения

{config_load file="$language/lang_$language.conf" section="xxx"}

Таким образом, наш кастомный языковой конфиг перекроет дефолтный в нужных местах.

Возможно что-то не учел, на дворе ночь. Если так - прошу поправить.

Ссылка на сообщение
Поделиться на другие сайты
  • 1 month later...

Ещё бы методику для собственных надписей содержащихся в файле russian.php. Например надписи на кнопках поменять:


...
define('IMAGE_BUTTON_CHECKOUT', 'Оформить заказ');
define('IMAGE_BUTTON_CONFIRM_ORDER', 'Подтвердить Заказ');
...[/CODE]

Да и не только на кнопках, а то ситуация с обновлением движка и потерей всех языковых изменений это довольно насущная проблема.

Ссылка на сообщение
Поделиться на другие сайты

Для этого есть файл /includes/local_modules.php

Вот берёте его и подключаете в него свои языковые файлы.

Тогда при установке обновлений ничего из Ваших изменений не затрётся.

Ссылка на сообщение
Поделиться на другие сайты

Распространённый случай - просят исправить наименования корня каталога вместо "Каталог" на "Каталог товаров". Переменная находится в файле "russian.php"

Не срабатывает. Два варианта пробовал:

1. В файл "local_modules.php" вношу строку:

define('HEADER_TITLE_CATALOG', 'Каталог товаров');
2. Вношу эту строку в новом языковом файле "mylang.php". Подключаю по всякому вызов этого файла в "local_modules.php":
require (DIR_WS_LANGUAGES . $_SESSION['language']. '/mylang.php');[/code]

Не подхватывается но и ошибок не выдаёт.

Очень нужно надписи на кнопках изменить и некоторые сообщения. А еще и язык должен быть не один. Очень не хочется всё заново переводить на другие языки, если без меня сунутся обновлять версию движка.

Ссылка на сообщение
Поделиться на другие сайты

По идее, надо наоборот, т.е. в local_modules.php подключаются все нужные файлы.

А в самом mylang.php тексты.

Ссылка на сообщение
Поделиться на другие сайты

Ну так и не работает по второму варианту.

Что конкретно должно быть в файлах? У меня mylang.php:

define('HEADER_TITLE_CATALOG', 'Каталог товаров');
и local_modules.php
require (DIR_WS_LANGUAGES . $_SESSION['language']. '/mylang.php');[/code]

Ссылка на сообщение
Поделиться на другие сайты

local_modules.php подключается в /includes/application_top.php

По идее, должно работать.

А попробуйте просто в mylang.php добавить echo '123';

Выведет этот текст?!

Ссылка на сообщение
Поделиться на другие сайты
  • 3 months later...
×
×
  • Создать...