我复制了产品magento,我的网址是product-1.html product-2.html

时间:2014-10-23 21:20:33

标签: magento url rewrite

我做了我的magento商店(社区) 我在很多产品上都使用过重复的产品而且我没有得到每个产品都必须更改URL密钥字段我认为我会自己解决它。

现在我有大约100种产品,不幸的是它们现在被命名为示例:

/HaircolorBlack.html,/haircolorblack-1.html,/haircolorblack-2.html等。

我想知道在产品元标题之后是否有任何方法可以轻松制作magento重新创建网址?

这会非常有帮助。

我看到这篇两年前的帖子大致相同,但我不想使用那个剧本,因为我不知道它是否会破坏我的magento中的任何东西,因为它已经有了太多的更新。这是链接:Clearing URL keys in Magento

此外,我还需要关于脚本放置位置的完整白痴说明。对不起;)

非常感谢。

取值

1 个答案:

答案 0 :(得分:0)

您可以使用magento本身创建一个关闭脚本..将此脚本添加到magento根文件夹中的某个位置(index.php旁边):

<?php

  require_once "app/Mage.php";

  Mage::app('admin'); // must be admin to do changes

  function convertToUrlKey($string) {
    return $string; // I WILL LEAVE YOU TO SOLVE THIS PART
  }

  foreach(Mage::getModel('catalog/product')->getCollection() as $product):

     $metaTitle = $product->getMetaTitle();
     $urlKey = convertToUrlKey($metaTitle);

     try {
         $product->setUrlKey($urlKey);
         $product->save();
         echo "Assigned url key {$urlKey} to {$product->getName()}.\n";
     } catch(Exception $ex) {
        echo "ERROR: {$ex->getMessage()}";
     }

  endforeach;

显然这不是一个完整的解决方案,因为您必须重新创建convertToUrlKey函数,以便将“黑发颜色”转换为“黑发颜色”的正确行为,并确保没有重复的url密钥生成..

您可以通过浏览或通过SSH运行来运行脚本:

$ cd magentoProject
$ php -f changeUrlkeys.php
祝你好运!