我使用具有自定义主题的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年