在外部登录页面上显示具有非默认主题的Magento块

时间:2012-05-17 22:35:39

标签: magento

我正在开发一个静态的php登陆页面,该页面可以在Magento之外访问,我正在尝试使用非默认主题来使用Magento块。

我可以使用默认主题来显示块,但我不确定如何指定要使用的备用主题。两个主题都设置在同一个包中。

这就是我到目前为止:

require_once 'app/Mage.php';
umask(0);
$layout = Mage::app()->getLayout();
$layout->getUpdate()->addHandle($handles)->load();
$layout->generateXml()->generateBlocks();
$layout->getBlock('topLinks')->toHtml();

1 个答案:

答案 0 :(得分:0)

你不会直接用“主题”来做。您需要使用具有您要使用的主题的商店代码。例如,如果您的商店代码为“Main Store”且商店视图为“English”,那么您需要在更改当前配置范围后在Admin -> System -> Configuration -> Design -> Themes中设置主题。

完成后,您可以在代码的Mage::app()部分指定商店代码,如下所示:

  $layout = $Mage::app('YOUR_STORE_CODE')->getLayout();

您的代码错误,因为它是。您需要指定$handles或将其设置为default

以下是关于它的相当不错的帖子,可能有所帮助:http://www.magentocommerce.com/boards/viewthread/262102/#t352798