如何获取magento中的特定页面URL

时间:2011-09-15 12:08:25

标签: magento

我想在Magento中获取网页的网址密钥。

例如,我有一个名为“What's New”的CMS页面,其标识符(或URL密钥)为“whats_new”。因此,正确的网址为http://mysite.com/whats_new

目前我使用此代码来回显其位置:

<?php echo Mage::getBaseUrl();?>whats_new

我认为这是不好的做法,因为它的标识符(或URL密钥)是可管理的;如果其URL密钥或标识符发生更改,则链接将中断。回显其动态URL密钥的正确方法是什么?也许类似于Wordpress的get_permalink('10')

7 个答案:

答案 0 :(得分:40)

我认为这会做你想做的事情:

<?php echo Mage::helper('cms/page')->getPageUrl( $pageId ) ?>

$pageId替换为您要链接的页面的正确ID,它应该有效。

答案 1 :(得分:19)

试试这个

<?php echo $this->getUrl('whats_new');?>

如果您需要动态添加网址密钥,那么

<?php echo $this->getUrl($yourDynamicVariable);?>

当然,如果更改了url键,你必须实现填充变量所需的功能

答案 2 :(得分:8)

您应该使用<?php echo Mage::getUrl('page-url.html); ?>

答案 3 :(得分:4)

在CMS页面

{{store _direct="url_key"}}

如果你想要.phtml文件,那么

<?php echo Mage::helper('cms/page')->getPageUrl('url_key') ?>

答案 4 :(得分:2)

Mage::getUrl(null, array('_direct' => $page->getIdentifier()));

答案 5 :(得分:1)

也可以使用页面标识符

来检索CMS页面URL
<?php echo Mage::helper('cms/page')->getPageUrl('cms_page_identifier') ?>

答案 6 :(得分:0)

你应该使用

{{store direct_url =&#34; whats_new /&#34;}}

<?php echo $this->getUrl('whats_new');?>