2012-08-01 76 views
3

在我们的Magento安装中存在URL重写的奇怪行为,我很难相信它没有任何问题。仅供参考,我现在有...Magento:不一致的URL重写

系统 - >配置 - >目录 - >目录 - >搜索引擎优化 - 针对URL>创建永久重定向URL是否改变的关键是 “否”

而且

我已经尝试从系统 - >索引管理重新编制URL重写索引。这是而不是似乎删除已经存在的重写。

当我通过数据源上传产品时,我将url_key列留为空白,以便Magento可以使用产品名称创建自己的列。因此,如果我上传名为White Shirt A的产品,它将创建一个目标请求路径catalog/product/view/id/1234mydomain.com/white-whirt-a.html。但是,如果我从管理面板中彻底删除此产品,并重新上传之前使用的相同数据馈送,则Magento不会将预览URL映射删除到mydomain.com/white-whirt-a.html。相反,它会创建一个新的URL规则到mydomain.com/white-whirt-a-1.html(或由于某种原因有时使用产品ID的mydomain.com/white-whirt-a-1234.html)。请注意,在管理员中,产品将具有mydomain.com/white-whirt-a.html作为其URL键,这是不正确的。

一些问题:

  1. 我不希望要创建...-1.html...-1234.html。我如何防止获取这些“连字符”链接?

  2. 更大的问题是url_key可用于管理和目录导出文件显示mydomain.com/white-whirt-a.html为此产品。当实际的URL是mydomain.com/white-whirt-a-1.html ..发生了什么事?

  3. Magento何时使用产品ID创建URL重写?即mydomain.com/white-whirt-a-1234.html

回答

0

看来,Magento,或至少我们的当前版本,不会删除一旦创建URL重写,无论设置是什么或者是否存在相应的产品当前目录。因此,如果您上传ID为1234的产品并稍后删除该产品,则URL重写将保留在core_url_rewrite中。无论出于何种原因,您再次上传本产品时,它都会有一个新的产品ID,当然,如5678,但由于产品ID 1234存在URL重写,其名称与产品ID 1234相同,所以最终将以...-1.html你的新改写。我已经要求Magento提供帮助,但他们并没有完全明白我想说明的内容。同时,清空表格core_url_rewrite将适用于开发者网站。

0

尝试重新索引你的URL重写: 系统>索引管理[目录URL重写]

,如果你有很多的产品,也许你会得到网关超时,如果出现这种情况,你可以尝试从命令行执行它,它位于: [magentoRoot] /shell/indexer.php

+0

已经尝试了很多次。重新索引似乎无法删除core_url_rewrites表中的现有重写。 – musicliftsme 2012-08-02 00:20:44

+0

你使用任何扩展名?在URL重写中,有字段命名类型,值是什么? (系统/定制/?) – ivantedja 2012-08-02 01:57:19

+0

URl重写没有扩展名。你指的是哪个URl重写?Db表,管理菜单或? – musicliftsme 2012-08-02 05:19:06