获取当前管理员皮肤主题目录的URL路径的最佳方式是什么?Magento 1.x从前端获取管理员皮肤URL的最佳方式
我知道
Mage::getModel('core/design_package')->getSkinUrl();
将返回前端皮肤主题目录的URL。是否有一个Adminhtml等价物?
非常感谢
获取当前管理员皮肤主题目录的URL路径的最佳方式是什么?Magento 1.x从前端获取管理员皮肤URL的最佳方式
我知道
Mage::getModel('core/design_package')->getSkinUrl();
将返回前端皮肤主题目录的URL。是否有一个Adminhtml等价物?
非常感谢
有关管理皮肤网址,您可以使用:
<?php echo Mage::getDesign()->getSkinBaseUrl(array('_area'=>'adminhtml')) ?>
此方法可在中找到。
如果你想要某个包/主题的url,你也可以通过如_package
和_theme
这样的数组传递其他参数。
这是获得一个安全的皮肤网址的最佳方式:
$this->getSkinUrl('images/imagename.gif', array('_secure'=>true));
为了得到一个不安全的皮肤网址:
$this->getSkinUrl('images/imagename.jpg');
对不起兄弟,我正在从前端寻找管理员的皮肤URL。如果我从前端使用$这肯定会得到一个前端URL? –
核心的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);
非常感谢您的回答。如果你在前端(例如在调用布局文件时)并希望访问后端URL?使用上面的代码肯定会返回前端路径吗? –
我更新了如何从前端调用管理员的答案,反之亦然 –
好的一个兄弟,好的,所以你可以传递一个参数,这太棒了! –