2013-08-08 3 views
1

Я хочу перенаправить свой старый идентификатор продукта на новый.Перенаправить старый продукт на новый (Opencart) (HTACCESS)

например: От: ч * ф: //www.mysite.com/index.php маршруту = продукта/продукта & product_id = 50 к: ч * р: //www.mysite.com/index ? .php маршрут = продукт/продукт & product_id = 80

ИЛИ

От: ч * ф: //www.mysite.com/index.php маршрут = продукт/продукт & путь = 63_64_83 & product_id = 163 To: h * tp: //www.mysite.com/index.php? Route = продукт/продукт & путь = 63_64_83 & product_id = 175

Спасибо :)

ответ

0

Добавьте это в .htaccess в корневой каталог вашего веб /

RewriteEngine on 
RewriteBase/

RewriteCond %{QUERY_STRING} (^|.*?&)product_id=50(&.*|$) [NC] 
RewriteRule ^(.*)$ $1?%1product_id=80%2 [R=301,L] 

RewriteCond %{QUERY_STRING} (^|.*?&)product_id=163(&.*|$) [NC] 
RewriteRule ^(.*)$ $1?%1product_id=175%2 [R=301,L] 
0

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

Open:

catalog/controller/common/seo_url.php

Непосредственно перед:

if (isset($this->request->get['route'])): 
    return $this->forward($this->request->get['route']); 
endif; 

Добавить:

if (isset($this->request->get['product_id'])): 
    switch ($this->request->get['product_id']): 
     case 50: 
      $this->request->get['product_id'] = 80; 
      $redirect = true; 
      break; 
     case 163: 
      $this->request->get['product_id'] = 175; 
      $redirect = true; 
      break; 
    endswitch; 
endif; 

if (isset($this->request->get['route']) && $redirect): 
    $this->redirect($this->request->get['route'], 301); 
endif; 

Не проверить конкретно, но у меня есть что-то подобное, чтобы изменить некоторые URLs.

Смежные вопросы