我使用具有自定义主题的magento EE 1.13.1.0,该主题在“系统”->“配置”->“设计”->“默认”中设置。
当我们使用Magento CMS预览版时,会出现此问题。它显示时没有自定义主题样式,因为默认情况下magento预览使用base/default
主题。
如果我编辑CMS Page的“设计”选项卡,并将Custom Theme
属性设置为某些自定义主题,则一切正常。但是默认情况下不是。
以前有人问过这个问题吗?也许我错过了一些配置?
无论如何要解决此问题,我创建了观察者并将其附加到cms_page_render
事件中以检查是否Custom Theme
设置了CMS页面的属性。如果不是,则使用真实的默认主题:
public function setDefaultThemeForCmsPreview(Varien_Event_Observer $oObserver)
{
$oRequest = $oObserver->getControllerAction()->getRequest();
if (
$oRequest->getControllerName() == 'cms_page_revision' &&
$oRequest->getActionName() == 'drop'
) {
$oCmsPage = $oObserver->getPage();
if ($oCmsPage->getCustomTheme()) {
list($sPackage, $sTheme) = explode('/', $oCmsPage->getCustomTheme());
} else {
$sPackage = Mage::getStoreConfig('design/package/name');
$sTheme = Mage::getStoreConfig('design/theme/default');
}
Mage::getSingleton('core/design_package')
->setPackageName($sPackage)
->setTheme($sTheme);
}
}
2
使用EE,您已获得Varien的支持。向他们询问,可能是他们会为您修复的错误。
—
ProxiBlue 2014年
为记录
—
起见,
您可能要发布解决方案作为答案并接受它。
—
Matthias Zeis 2014年