簡體   English   中英

Magento 1.x從前端獲取管理員皮膚URL的最佳方法

[英]Magento 1.x Best way to get admin skin URL from frontend

獲取當前管理皮膚主題目錄的URL路徑的最佳方法是什么。

我知道

Mage::getModel('core/design_package')->getSkinUrl();

它將返回前端皮膚主題目錄的URL。 是否有Adminhtml等效項?

非常感謝

對於管理員皮膚網址,您可以使用:

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

可以在app/code/core/Mage/Core/Model/Design/Package.php找到此方法。

如果您想要某些軟件包/主題的URL,也可以通過_package_theme類的數組傳遞其他參數。

這是獲取安全外觀URL的最佳方法:

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

獲取不安全的皮膚URL:

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

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 );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM