Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

ОС 2.3.х Переключатель языков двуязыного сайта. Прошу помощи


Recommended Posts

Opencart 2.3.0.2

Пытаюсь реализовать переключение языков двуязычного без выпадающего меню и, кроме того, чтобы виден был лишь флаг языка, на который можно переключить сайт.

Изменил в админке файл language.tpl (вот его содержание):

 

<?php if(count($languages) > 1) : ?>
<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data" id="language">
    <div class="btn-group">
        <?php foreach($languages as $language) : ?>
        <?php if($language['code'] != $code) : ?>
            <a href="<?php echo $language['code']; ?>">
                <img width="16" height="16" src="catalog/language/<?php echo $language['code']; ?>/<?php echo $language['code']; ?>.png" title="<?php echo $language['name']; ?>" /></a>
        <?php endif; ?>
        <?php endforeach; ?>
    </div>
    <input type="hidden" name="code" value="" />
    <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />
</form>
<?php endif; ?>

 

Захожу на главную - все тип-топ: виден лишь активный флаг "другого" языка. Жму на флаг - получаю 404: Запрашиваемая страница не найдена.

В адресной строке "висит": https://мой сайт/en-gb

Лог ошибок в админке: Undefined variable:........\language.tpl on line 4

Выходит, что моя ошибка в строке: <?php foreach($languages as $language) : ?>

Не пойму, и своего ума не хватает.

Чешу репу, гуглю что-нить похожее - не могу найти!!! SOS!!!

 

 

 

Змінено користувачем ewentual
Надіслати
Поділитися на інших сайтах


Просто для информации
Типичная ошибка юзабилити
Согласно правилам юзабилити - нельзя "маркировать" язык флагами. Флагами "маркируются" регионы.
Языки не принадлежат странам

И флаги могут дать большой процент отказов
К примеру если англичанин (или американец) зайдет в магазин и увидит в выборе языка English американский (английский) флаг - он просто сразу уйдет
Это подсознательная ментальность юзабилити
Языки "маркируются" текстовой информацией или "кодом" языка
Посмотрите как сделано это в google
https://www.google.com/preferences?hl=ru-RU&fg=1#languages

Надіслати
Поділитися на інших сайтах

2 минуты назад, markimax сказал:

Просто для информации
Согласно юзабилити - нельзя "маркировать" язык флагами. Флагами "маркируются" регионы.
Языки не принадлежат странам

И флаги могут дать процент отказов
К примеру если англичанин зайдет в магазин и увидит в выборе языка English американский флаг - он просто сразу уйдет
Языки "маркируются" текстовой информацией или "кодом" языка
Посмотрите как сделано это в google
https://www.google.com/preferences?hl=ru-RU&fg=1#languages

 

Спасибо, это я знаю. И меняется это в ссылке элементарно. Но ведь суть вопроса не в этом...

Надіслати
Поділитися на інших сайтах


1 минуту назад, ewentual сказал:

 

Спасибо, это я знаю. И меняется это в ссылке элементарно. Но ведь суть вопроса не в этом...

Так дайте ПОЛНЫЙ текст ошибки! Ну ..."честное слово"
Нам что телепатировать на что ругается ?

Надіслати
Поділитися на інших сайтах

11 минут назад, markimax сказал:

Так дайте ПОЛНЫЙ текст ошибки! Ну ..."честное слово"
Нам что телепатировать на что ругается ?

 

Делаю сайт на локалке (Open Server).

Лог ошибки полный: PHP Notice:  Undefined variable: language in D:\OpenServer\domains\мой сайт\catalog\view\theme\default\template\common\language.tpl on line 4

 

Посмотрел Firebug'ом, вот что пишет:

<input type="hidden" name="redirect" value="https://мой сайт/index.php?route=error/not_found&amp;_route_=en-gb&amp;_=1487779388009" />

Подскажите, где еще посмотреть, на что ругается.

Надіслати
Поділитися на інших сайтах


  • 2 years later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.