Perché usare un tema quando hai dei moduli?


9

All'interno del mio modulo personalizzato ho aggiunto il file

Vendor/Theme/view/layout/default.xml

che sto usando per sovrascrivere gran parte del modello globale del sito con modelli / blocchi / layout dal modulo personalizzato. Allego anche il mio stile globale che esiste nella view/webdirectory in quel modulo.

Dovrei usare un tema per questo invece? C'è una buona argomentazione per un modello di progettazione rispetto all'altro? Per esempio. utilizzando app/designover app/code?

Risposte:


13

È possibile fare qualsiasi cosa si voglia, ma se è la cosa giusta per farlo è la domanda qui.

moduli

I moduli dovrebbero aggiungere o modificare la funzionalità del negozio online e dovrebbero / potrebbero essere trasferiti ad altri negozi online Magento 2. I moduli possono avere il proprio layout, modelli e stile e possono modificare il layout generale, i modelli e lo stile se ciò è necessario per la funzionalità del modulo. I moduli si concentrano principalmente su una singola funzionalità e quindi sono (relativamente) piccoli e ciò rende molti negozi online Magento 2.

I moduli possono essere facilmente abilitati e disabilitati, il che farà apparire o scomparire le funzionalità specifiche che aggiungono o cambiano. Non dovrebbe causare la modifica dell'intero sito.

Temi

I temi cambiano il layout, il modello e lo stile del webshop globale e non dovrebbero aggiungere o rimuovere funzionalità. Sebbene i temi confezionati (a pagamento) possano includere funzionalità speciali, ciò viene spesso eseguito in moduli che accompagnano tale tema. I temi dovrebbero essere intercambiabili, quindi possono essere applicati a qualsiasi negozio Web Magento 2, ma anche un negozio Web Magento 2 può cambiare facilmente i temi (o avere più ad esempio in una configurazione multi store).


Quindi se chiedi dove "sovrascrivere gran parte del modello globale del sito con modelli / blocchi / layout" , la risposta sarebbe in un tema .

Ancora una volta, puoi fare tutto ciò che desideri, ma se qualcun altro si unisse o prendesse in carico lo sviluppo, si aspetterebbe che i cambiamenti del tema globale del sito siano in un tema e non in un modulo. Quando le cose non vengono eseguite come previsto, questo rallenta lo sviluppo e rende difficile la manutenzione.


1
Esatto, voglio fare le cose nel modo giusto. Apprezzo la risposta utile, inizierò a migrare alcune di queste modifiche su un tema.
Daniel Thompson,

3

Questa risposta è ciò che pensavo non potesse essere lo standard Magento

Quando utilizzare il tema per layout e modelli e quando utilizzare il modulo

Tema

Quando hai bisogno che le tue modifiche siano in un posto, devi mostrare che le tue modifiche dovrebbero apparire diverse, in negozi o siti Web diversi e che hai più temi, quindi puoi apportare direttamente modifiche al tema

Modulo

quando stai sviluppando un modulo o un'estensione per il requisito e pensi che le tue modifiche dovrebbero essere globali, inserisci layout e template nel modulo stesso

Quello che suggerisco di fare sempre una copia master nel modulo e se si desidera modificare in base alle proprie esigenze, copiare il tema e apportare modifiche ai modelli.

In questo modo puoi risolvere problemi come se il tema è cambiato, quindi anche i file dei tuoi moduli erano lì

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.