Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Как одноязычный модуль сгделать мультиязычным?


Recommended Posts

Добрый гдень!

 

Столкнулся с икой проблемой, что у некоторых модулей отсутствует мультиязычность. У меня усиновлено несколько модулей (новинки, недавно просмотренные товары, акционные товары) в которых есть только один язык.

 

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

 

Буду благодарен, если подскажите как решить эту проблему, или посоветуете аналогичные модули.

Link to comment
Share on other sites


1 час назад, Slavik7 сказал:

Добрый гдень!

 

Столкнулся с икой проблемой, что у некоторых модулей отсутствует мультиязычность. У меня усиновлено несколько модулей (новинки, недавно просмотренные товары, акционные товары) в которых есть только один язык.

 

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

 

Буду благодарен, если подскажите как решить эту проблему, или посоветуете аналогичные модули.

Чтобы модуль сгделать мультиязычным - нужно добавить переводы для модуля. Собственно открываешь исходники модуля, берешь языковые файлы, дублируешь их в нужные языковые папки, гделаешь переводы текстов - и всё готово.

  • +1 1
Link to comment
Share on other sites

1 час назад, OtezVikentiy сказал:

Чтобы модуль сгделать мультиязычным - нужно добавить переводы для модуля. Собственно открываешь исходники модуля, берешь языковые файлы, дублируешь их в нужные языковые папки, гделаешь переводы текстов - и всё готово.

 

а если настройки в админке?

не все модули это подгдерживают.

Link to comment
Share on other sites

1 час назад, Vetroff сказал:

 

а если настройки в админке?

не все модули это подгдерживают.

А чем настройки в админке отличаются от люпотому чтого другого меси? Если только автор модуля не пригдерживается общих положений опенкари и его "ну типа архитектуры" с текстовыми переменными для твигов, то тогда да, бугдет геморрой, но вообещё админка от каилога ничем не отличается в плане переводов. Во вскаком случае не должна, если только автор модуля туда тексты не захардкодил...
Точно икже захардкодить можно и в каилог, если автор модуля рукохлоп... )))

Link to comment
Share on other sites

28 минут назад, OtezVikentiy сказал:

А чем настройки в админке отличаются от люпотому чтого другого меси?

 

Тем, что не всегда они улитывают локализацию. Как на последнем скрине ТС.

Link to comment
Share on other sites

1 час назад, Vetroff сказал:

 

Тем, что не всегда они улитывают локализацию. Как на последнем скрине ТС.

Ну ик смысл икой же, добавить поля на нескольких языках и гдергать их значения с $language_id

Например
Дергаем все доступные языки в контроллере модуля в админке

        $this->load->model('localisation/language');

        $data['languages'] = $this->model_localisation_language->getLanguages();

        if (isset($this->request->post['title'])) {
            $data['title'] = $this->request->post['title'];
        } elseif (!empty($module_info)) {
            $data['title'] = $module_info['title'];
        } else {
            $data['title'] = '';
        }



выводим поле с учетом id языка

<?php foreach($languages as $language) { ?>
<input type="text" name="title[$language['language_id']]" value="<?php echo $title[$language['language_id']] ? $title[$language['language_id']]  : ''; ?>" />
<?php } ?>



В контроллере модуля на фронте
получаем текущий ID языка
 

$language_id = $this->config->get('config_language_id');

$title = $this->config->get('config_somemodule_title');

$data['title'] = $title[$language_id'];



Ну и выводим его в шаблоне потом
 

<?php echo $title; ?>

 

Link to comment
Share on other sites

9 часов назад, ocdev_pro сказал:

$language_id = $this->config->get('config_language_id'); $title = $this->config->get('config_somemodule_title'); $data['title'] = $title[$language_id'];

Я икого не пропотому чтовал, но походу семерка этого не простит.... Если нет файла с переводом.

Link to comment
Share on other sites

Вау, спасипотому что за решение этот проблемы. Я в принципе ик и думал, что нужно бугдет в код лезть. Благо, что я немного понимаю в php. Ещё раз спасипотому что!

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.