Aperçu CMS sans styles lors de l'utilisation d'un thème personnalisé

10

J'utilise magento EE 1.13.1.0 avec un thème personnalisé qui est défini dans Système-> Configuration-> Conception-> Par défaut.

Le problème apparaît lorsque nous utilisons Magento CMS Preview. Il est affiché sans styles de thème personnalisés, car par défaut, l'aperçu magento utilise le base/defaultthème.

Si je modifie l'onglet Conception de la page CMS et que je définis l' Custom Themeattribut sur un thème personnalisé, tout fonctionnera. Mais pas par défaut.

Quelqu'un avait ce problème avant? Peut-être que j'ai raté une configuration?

Quoi qu'il en soit, pour résoudre ce problème, j'ai créé Observateur et je l'ai attaché à l' cms_page_renderévénement pour vérifier si l' Custom Themeattribut de la page CMS est défini. Sinon, utilisez le vrai thème par défaut:

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);
    }
}
oleksii.svarychevskyi
la source
2
Avec EE, vous avez payé le support avec Varien. Demandez-leur à ce sujet, cela pourrait être un bug qu'ils corrigeront pour vous.
ProxiBlue
1
Pour mémoire, j'ai mis l'observateur ci-dessus en place et il semble bien fonctionner jusqu'à ce qu'un correctif puisse être fourni par Magento
jharrison.au
Vous pouvez publier votre solution comme réponse et l'accepter.
Matthias Zeis

Réponses:

2

J'ai rencontré ce problème dans Magento Enterprise 1.12.x - il semble que ce soit un bogue de Magento qui n'a pas été examiné. Je pense que ma solution consistait à modifier AdminHTML, mais je pense que votre solution est plus élégante.

Francis Kim
la source
0

Le même problème que j'ai eu, pour cela je viens de copier "styles.css" et de le coller dans le dossier "\ skin \ frontend \ base \ default \ css", puis le problème est résolu.

Le fichier css n'existe pas là, donc le problème est survenu. C'est peut-être le problème.

Helphin
la source
Merci pour la réponse. Mais déplacer des styles de votre thème actuel vers `base \ default` n'est pas une bonne solution au problème. Tout d'abord, il s'agit de duplication de code (vous devrez prendre en charge deux fichiers si vous devez apporter des modifications aux styles). Le deuxième point négatif est que si vous changez de thème, votre problème réapparaîtra.
oleksii.svarychevskyi
Je pense que le problème est dû à la feuille de style manquante, je viens donc de copier le thème par défaut CE (styles.css) ici. son travail bien. Même moi, j'ai changé le thème de son bon fonctionnement. Je ne suggère pas que ce soit la solution, c'est un bug dans EE.
Helphin