在做magento的项目时,我们经常会用到的方法之一就是获得图片,js,css,或者其他文件的路径,下面我们一起来看一下我们平时用到的一些常用的获得url的方法。

在magento静态块中获得 url 路径



点击跳到id 是home 的cms页面。  
1.{{store direct_url="home"}}

定位一张图片的位置。 
2.{{skin url='images/media/banner1.jpg'}}

获得skin url
3.{{skin url='images/sampleimage.jpg '}}  

获得media url
4.{{media url='/sampleimage.jpg'}}  

获得store url
5.{{store url='mypage.html'}}  

获得base url
6.{{base url='yourstore/mypage.html'}}  



在phtml文件中获得各种url
以下方法必须包含在php标签中使用。如:
Php代码  



获取带http 的网站根地址为:  
7.Mage::getBaseUrl('web');	

首先获得 media 带 http 的url 地址。
8.Mage::getBaseUrl('media') 

同理也可以获得skin 和js 目录的地址:  
9.Mage::getBaseUrl('skin/frontent/default/default/');
10.Mage::getBaseUrl('js/mage/translate.js');

在block 中可以获得任何页面的URL.  
11.$this->getUrl('catalogsearch/advanced/result');  

其中this->getSkinUrl();一看应该就知道得到的是skin下面的路径。 
12.$this->getSkinUrl('css/style.css');  获得当前模版下skin/frontend/package/theme/css/style.css文件。
13.$this->getSkinUrl('images/logo.png'); 获得当前模版下skin/frontend/package/theme/images/logo.png文件。

要是要获得的是具体页面的url, 如果$this不能用就可以用Mage:: 来调用函数  
14.$this->getUrl('contacts');  

获得magento的secure url
15.$this->getSkinUrl('images/ sampleimage.gif',array('_secure'=>true))
这两种方法的差别就在于secure参数。有兴趣可以做下secure试试。
 
获得magento当前页面的url
16.$current_url = Mage::helper('core/url')->getCurrentUrl();  

获得magento的首页url
17.$home_url = Mage::helper('core/url')->getHomeUrl();  



有时候我们获得的url中,我们不想保留index.php,如:http://www.magease.com/index.php/skin/frontend/magease/default/images/logo.png,我们只想要保留http://www.magease.com/skin/frontend/magease/default/images/logo.png,那我们可以尝试用以下方法来实现这个效果。


获得magento链接
18.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_LINK);  

获得magento的 media url
19.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);  

获得magento的 skin url
20.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN);  

获得magento的 store url
21.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);  

获得magento的 js url
22.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_JS);