2017-01-09 145 views
0

嗨我想将我当前的产品网址结构更改为新的网址结构,但由于与我的产品关联的用户,我希望保留旧网址的结构。将旧网址重定向到新的网址格式

如何在不为每个产品手动创建301重定向的情况下执行此操作?

+0

认真吗?你想为每一个产品创建一个重定向吗?我不是你必须在你的htaccess中创建一些规则:如果old_url然后重定向到具有相同参数的new_url。休任务。祝你好运。 – PrestaAlba

+0

更具体一点,你的新老网址结构是什么? –

回答

0

不知道你有什么,只是想在一个1.6.1.6 的Prestashop版本,您可以将这个控制装置:

<?php 
class Dispatcher extends DispatcherCore 
{ 
    protected function loadRoutes($id_shop = null) 
    { 
     parent::loadRoutes($id_shop); 

     $language_ids = Language::getIDs(); 

     if (isset($context->language) && !in_array($context->language->id, $language_ids)) { 
      $language_ids[] = (int)$context->language->id; 
     } 

     foreach ($language_ids as $id_lang) { 
      foreach ($this->default_routes as $id => $route) { 
       if($id == "product_rule") 
        $this->addRoute(
         'product_rule2', 
         '{id}-{rewrite}{-:ean13}.xhtml', 
         'product', 
         $id_lang, 
         $route['keywords'], 
         isset($route['params']) ? $route['params'] : array(), 
         $id_shop 
        ); 
      } 
     } 
    } 
} 

在这种情况下,我使用XHTML第二个规则(如果没有这个覆盖它给了一个404)。您可以将{id} - {rewrite} { - :ean13} .xhtml更改为您的规则,然后更改SEO中的规则以希望您希望新规则成为。

0

请写下您的ps版本。如果你使用1.5或以上?

您现在使用此结构{category:/} {id} - {rewrite} { - :ean13} .html?或 {类别:/} {改写} { - :EAN13}的.html或此{类别:/} {}改写的.html

请写出更多细节

取决于它只是让htaccess的规则 ( [0-9] +)的ID (。*)用于重写 并请使用RedirectMatch永久 并且被设置为$ 1,$ 2的结果,等

该指南必须帮助了解htaccess的URL重写https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/

相关问题