Question

Est-il possible de réécrire un contrôleur dans un module communautaire qui est déjà en train de réécrire un contrôleur de base?

J'ai la syntaxe correcte car il travaille dans d'autres réécritures, mais dans ce cas spécifique la réécriture ne fonctionne pas.

Il y a un module communautaire réécriture du contrôleur de panier et je veux réécrire les modules de la communauté contrôleur de panier.

Ce serait comme ceci:

My Controller -> Community Modules cart controller -> Mage Cart controller
Était-ce utile?

La solution

Cela peut dépendre de la façon dont l'extension est prépondérant du contrôleur, mais va ici. Vous devez ajouter dans le fichier config.xml de votre module, cela comme un enfant du nœud <config>.

<frontend>
    <routers>
        <checkout>
            <args>
                <modules>
                    <Your_ModuleNameHere before="Community_ModuleNameHere">Your_ModuleNameHere</Your_ModuleNameHere>
                </modules>
            </args>
        </checkout>
    </routers>
</frontend>

Si le module communautaire remplace le contrôleur de panier de la même manière que celle décrite ci-dessus cela fonctionne. Si elle utilise la « vieille méthode » avec des étiquettes de <from> et <to> alors il ne fonctionnera pas.
(Et je n'ai aucune idée sur la façon de passer outre cela).

[EDIT] Assurez-vous que votre contrôleur est également nommé CartController et il est situé dans Namespace/Module/controllers/CartController.php. Aussi, vous voudrez peut-être faire votre module local dépendent du module communautaire, mais je ne pense pas que ce soit obligatoire. Assurez-vous également étendre votre classe de contrôleur du contrôleur du module communautaire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top