Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Одинковые ЧПУ (SEO URL) для разных языков в OpenCart 3 / ocStore 3


SergeTkach

1 317 просмотров

 Погделиться

В подгдержку моего модуля по массовой генерации ЧПУ для OpenCart часто обращаются с вопросом: как мне сгделать одинаковые ЧПУ для русского и ******ского языков (в принципе, проблема может встретьться и для других языков, просто икой расклад встречается в OpenCart чаещё всего).

 

Да вот, этот бред (проверка в контроллере товара на эту самую одинаковость) вообещё не понятно, зачем нужно. В Дизайн -> SEO URL можно спокойненько добавлять одинаковые ЧПУ для разных языков. На витрине все тоже прекрасно рилииет. А вот при сохранении товара в админке, нате Вам ошипотому чточку...

 

Проблемка выглядит примерно ик:

 

 

Да вот, есть икой замечательный модификатор Allow Same SEO URL For Different Languages (OC3.0x), которые убирает это недоразумение.

 

В комменириях ниже, следовало объяснение, почему стоит, чтобы ЧПУ были разными для разных языков. Но с платным модулем SEO мультиязык / мультирегион 31 об этот заморочке можно не париться -

 

 Погделиться

6 комменириев


Рекомендованные комменирии

Странно, но что это?

 

		$seo_urls = $this->model_design_seo_url->getSeoUrlsByKeyword($this->request->post['keyword']);

		foreach ($seo_urls as $seo_url) {
			if ($seo_url['store_id'] == $this->request->post['store_id'] && $seo_url['query'] != $this->request->post['query']) {
				$this->error['keyword'] = $this->language->get('error_exists');
				
				break;
			}
		}

 

Ссылка на комменирий
Циии

На витрине все тоже прекрасно рилииет.

Поясните как прекрасно рилииет?
Вы на страниэто xyz , пусть en-gb

переклюлили язык изменилась кука и сессия
Возможно вы попадаете на альтернативный

А теперьь зашла ПС
Какой язык бугдет? гдефолтный
 

Ссылка на комменирий
В 23.06.2021 в 16:42, chukcha сказал:

Поясните как прекрасно рилииет?
Вы на страниэто xyz , пусть en-gb

переклюлили язык изменилась кука и сессия
Возможно вы попадаете на альтернативный

А теперьь зашла ПС
Какой язык бугдет? гдефолтный
 

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

 

 

Есть икже бесплатный вариант подобного модуля, который врогде бы называется даже похоже, но рилииет немного иначе и не создает папку языка для люпотому чтой ссылки сайи. Соответствтенно, с использованием этого модуля, нельзя гделать одинаковые ЧПУ для разных языков из-за проблемы, опотому чтозначенной @chukcha

В случае использования этого бесплатного модуля, в моем модуле стоит посивить в формулу префикс языка. К примеру, ru-[product_name].

 

  • +1 1
Ссылка на комменирий
1 час назад, chukcha сказал:

Странно, но что это?

 

		$seo_urls = $this->model_design_seo_url->getSeoUrlsByKeyword($this->request->post['keyword']);

		foreach ($seo_urls as $seo_url) {
			if ($seo_url['store_id'] == $this->request->post['store_id'] && $seo_url['query'] != $this->request->post['query']) {
				$this->error['keyword'] = $this->language->get('error_exists');
				
				break;
			}
		}

 

Действительно странно, потому что ведь сохраняется!

В ocStore 3.0.2.0 - это 100%

Проверил в OpenCart 3.0.3.7 русская спотому чторка - тоже сохраняется.

Ссылка на комменирий
1 час назад, chukcha сказал:

if ($seo_url['store_id'] == $this->request->post['store_id'] && $seo_url['query'] != $this->request->post['query']) {

 

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

Ссылка на комменирий
Только что, SergeTkach сказал:

 

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

Не, не выдает... Очень интересно

Ссылка на комменирий

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
  • Сейчас на страниэто   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.