Как задать язык через url в opencart

Как задать язык через url в opencart

01.12.2017 10:40:47 Просмотров 13 Источник

Я бы хотел изменить язык через url, чтобы мой сайт мог отображаться на разных языках в поисковых системах.
например: я бы хотел, чтобы пользователь изменил язык через такую ссылку:
www.mysite.com/lang=ar

Я использую opencart 3.0.2
В настоящее время пользователь меняется через меню формы, которые отправляют запрос post, поэтому поисковая система не может индексировать другие языки.
Как я могу это сделать?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/47588719/how-to-set-language-through-url-in-opencart#comment82141591_47588719
Я отредактировал его, чтобы быть более конкретным. спасибо
https://stackoverflow.com/questions/47588719/how-to-set-language-through-url-in-opencart#comment82155362_47588719
Вы уверены, что поисковые системы не индексируют другие языки?
https://stackoverflow.com/questions/47588719/how-to-set-language-through-url-in-opencart#comment82169710_47588719
Да, это то, что происходит с моим сайтом, потому что нет ссылок на другие языки, это просто список форм с методом post!

Ответы - Как задать язык через url в opencart / How to set language through url in opencart

Является ответом!
Behiry

10.12.2017 10:45:58

Я успешно применил эти шаги:
1-Открыть каталог / контроллер / запуск / startup.РНР
после строки:

$languages = $this->model_localisation_language->getLanguages();

добавьте следующий код:

if(isset($this->request->get['lng'])){
  $this->session->data['language'] = $this->request->get['lng'];
}

2-добавлены следующие строки .htaccess файл:

RewriteRule ^en/([^?]*) index.php?_route_=$1&lng=en [L,QSA]
RewriteRule ^ar/([^?]*) index.php?_route_=$1&lng=ar [L,QSA]

3-добавлены флаги языков в файл шаблона:

<div class="languageFlags">
 {% for language in languages %}
  <a href="/{{ language['code'] }}">
   <img src="catalog/language/{{ language['code'] }}/{{ language['code'] }}.png" alt="{{ language['name'] }}" title="{{ language['name'] }}" />
  </a>
 {% endfor %}
</div>

Теперь, когда я перехожу к www.mysite.com/en он перейдет на английский язык, и это верно для других языков, и теперь поисковая система может индексировать страницы на других языках.

Закрыть X