Magento企业CMS request_url不更新

时间:2015-08-06 02:59:04

标签: magento

使用Magento 1.14.2

我不确定之前是否有人遇到此问题,但是当我在Magento Enterprise CMS中更新URL密钥时,更改未在树中生效。

示例:当测试页的URL密钥从test更新为test-1时,我仍然可以访问http://test.com/someparent/test.html。尝试加载http://test.com/someparent/test-1.html,它找不到404页面。

到目前为止我的调查:

  • 更新URL密钥时更新cms_page中的标识符字段,但不更新enterprise_cms_hierachy_node(request_url密钥)。

  • 进一步查看代码,发现在app / core / Enterprise / Cms / Model / Hierarchy / Node appendPageToNodes()

    if($ node-> getPageExists()){                 继续;             } else {                 $节点 - > addData($ pageData)                      - > setParentNodeId($节点 - >的getId())                      - > unsetData($这 - > getIdFieldName())                      - > setLevel($ node-> getLevel()+ 1)                      - > setSortOrder($中将sortOrder)                      - > setRequestUrl($ node-> getRequestUrl()。'/'。$ page-> getIdentifier())                      - > setXpath($ node-> getXpath()。'/')                      - >保存();             }

因此,如果页面节点存在,它什么也不做,继续前进。如果不存在,则插入新记录。

只是想知道是否有其他人遇到过此问题,您是如何解决此问题的?

1 个答案:

答案 0 :(得分:0)

按照以下步骤操作,您将将其关闭。

  1. 使用mysqldump命令在.sql文件中备份数据库

  2. 在数据库中截断表 core_url_rewrite

  3. 现在刷新magento主页。

  4. 检查添加到 core_url_rewrite 表中的行的天气。

  5. 你完成了!