在magento下rewrite url的方法有3种,在.htaccess文件下写相关的正则表达式、配置文件config.xml、还有一种是存储到url_rewrite model中。至于使用哪种,看个人需求。

  如果只是固定的url地址的修改,可以直接在magento后台添加,具体操作可以参考网站:http://www.magentocommerce.com/knowledge-base/entry/creating-url-rewrites

1.module目录下etc/config.xml配置

        <rewrite>

            <my_personal_page>

                <from><![CDATA[#^/profile/#]]></from>

                <to><![CDATA[/personal/index/index/user/]]></to>

                    <complete>1</complete>

            </my_personal_page>

        </rewrite>

2.存储到数据库core/url_rewrite

  Mage::getModel('core/url_rewrite')
      ->setIsSystem(true)    //如果是自定义rewrite规则,则设置为false
      ->setIdPath('blog/index/view/id/'.$blogId) //rewrit id
      ->setTargetPath('blog/index/view/id/'.$blogId) //目标网址
      ->setRequestPath($url)  //访问网址
      ->save();

3.修改.htaccess文件

RewriteRule ^landing/([a-z\-]+)(/)?$ landing/index/index/page/$1 [R,L]
参考网站:

http://excellencemagentoblog.com/blog/2011/10/29/simple-url-rewrite-using-magento-xml/

http://www.magesolution.com/blog/url-rewriting-magento/

http://stackoverflow.com/questions/12270276/url-rewrites-for-magento-custom-module


Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐