Помощь Помогите настроить уникальные ссылки для товаров

Если переходить на seo pro то можно сделать так.
В файл seo_pro.php внести такие изменения:
После
PHP:
if(!isset($this->request->get['_route_'])){
    $this->validate();
} else {
Вставить
PHP:
if(substr($this->request->get['_route_'], 0, 7) == "magazin"){
    $this->request->get['_route_'] = substr($this->request->get['_route_'], 8);
}
Решение ориентировано на предоставленный пример ссылки автором. Предполагается что старая ссылка имеет вид
site.ru/magazin/pokraska-avtomobily/zidkay-rezina/tovar
Где
pokraska-avtomobily главная категория
zidkay-rezina подкатегория
tovar соответственно товар
И предпологаем что соответствующие категории и товары существуют в новой системе и имеют агалогичные алиасы.
В таком случае сео про сам переварит ссылку без каталога magazin и сделает 301 редирект на новый адрес.
Если сделать как написал Rudoy1488 то это тоже сработает, но будет выполнятся последовательно 2 редиректа (на уровне htaccess и seo pro) что явно не очень хорошо. Даже если использовать стандартный seo url я бы все равно не делал бы редирект на уровне htaccess так как была не просто смена дериктории сайта а переезд на новую ось. Что влечет за собой отсутствие на протяжение определенного времени большинства товаров с аналогичными алиасами. В такой ситуации более логично сначала проверить на существование такого алиаса в системе, если есть - 301, нет - 404.
Если прописать в htaccess то получится редирект ведущий на 404.
Обращаюсь к вам по поводу редиректа в htaccess. как правильно сделать редирект 301? я уже голову сломал, вылезает rout и всё тут
 
Подробнее опишите что вы сделали. Какая версия OC, включен ли seopro, какую ссылку вы пробовали открыть, что при этом открывается. Вносили ли вы изменения в файлы из предложенных выше способов.
 
Обращаюсь к вам по поводу редиректа в htaccess. как правильно сделать редирект 301? я уже голову сломал, вылезает rout и всё тут
если route добавляется к адресу после переадресации, то попробуйте редирект, в htaccess, вставить сразу после строки
Код:
RewriteBase /
в дефолтном htaccess после этой строки идут правила, вот перед ними сделать редирект нужно
в htaccess обычно так делаю редирект:
Код:
RewriteCond %{QUERY_STRING} ^_route_=category/subcategory/tovar$
RewriteRule ^(.*)$ https://site.ru/new-category/tovar? [R=301,L]
 
Последнее редактирование:
не трогайте опенкартовские ссылки а создайте переадресацию с помощью htaccess .
 
Назад
Сверху