Ich verwende Magento EE 1.13.1.0 mit einem benutzerdefinierten Design, das unter System-> Konfiguration-> Design-> Standard festgelegt ist.
Das Problem tritt auf, wenn wir Magento CMS Preview verwenden. Es wird ohne benutzerdefinierte Designstile angezeigt, da standardmäßig die Magento-Vorschau das Design verwendet base/default
.
Wenn ich die Registerkarte Design der CMS-Seite bearbeite und das Custom Theme
Attribut einem benutzerdefinierten Thema zuordne, funktioniert alles. Aber nicht standardmäßig.
Hatte jemand dieses Problem schon einmal? Vielleicht habe ich eine Konfiguration verpasst?
Um dieses Problem zu beheben, habe ich einen Beobachter erstellt und ihn an das cms_page_render
Ereignis angehängt, um zu überprüfen, ob das Custom Theme
Attribut der CMS-Seite festgelegt ist. Wenn nicht, verwenden Sie ein echtes Standardthema:
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);
}
}