2016-03-06 44 views

回答

3

有关管理皮肤网址,您可以使用:

<?php echo Mage::getDesign()->getSkinBaseUrl(array('_area'=>'adminhtml')) ?> 

此方法可在中找到。

如果你想要某个包/主题的url,你也可以通过如_package_theme这样的数组传递其他参数。

+1

好的一个兄弟,好的,所以你可以传递一个参数,这太棒了! –

2

这是获得一个安全的皮肤网址的最佳方式:

$this->getSkinUrl('images/imagename.gif', array('_secure'=>true)); 

为了得到一个不安全的皮肤网址:

$this->getSkinUrl('images/imagename.jpg'); 
+0

对不起兄弟,我正在从前端寻找管理员的皮肤URL。如果我从前端使用$这肯定会得到一个前端URL? –

1

核心的Magento使用这个核心代码:

Mage::getDesign()->getSkinUrl('images/image.gif'); 

的呼叫:

public static function getDesign() 
{ 
    return self::getSingleton('core/design_package'); 
} 

他们都只是$this等同可能无法在所有上下文/情况下工作,所以我会建议使用Mage::getDesign(),以避免问题。

PHP 5.3在某些情况下使用$this有一些问题。

您应该也可以始终如一地使用Mage::getSingleton('core/design_package');

Magento的标识了 '区域' 你从这么叫getDesign ...

为了唤起adminhtml前端地区,并得到他们的皮肤URL使用:

$oDesign = Mage::getDesign()->setArea('adminhtml'); 
$oDesign = Mage::getDesign()->setArea('frontend'); 
var_dump($oDesign); 
$sUrl = $oDesign->getSkinUrl('images/image.gif'); 
var_dump($sUrl); 
+0

非常感谢您的回答。如果你在前端(例如在调用布局文件时)并希望访问后端URL?使用上面的代码肯定会返回前端路径吗? –

+0

我更新了如何从前端调用管理员的答案,反之亦然 –

相关问题