Quali moduli predefiniti posso disabilitare?


25

Da questa domanda e Sander Mangel rispondono:

Disabilitazione dei moduli: miglioramento delle prestazioni?

Prima di tutto, meno moduli significa meno codice per (potenzialmente) caricare ed elaborare. Inoltre, molti moduli, come ad esempio il modulo Mage_Rss, eseguono molto codice in background come forzare reindicizzazioni su determinati eventi.

Poiché la domanda sopra non era diretta a condividere un elenco di moduli, penso che sia una buona idea raccogliere informazioni qui.

Altre risorse utili:

Qualche altro suggerimento sul modulo?
Quale modulo ha più impatto sulle prestazioni?

AGGIORNARE

Un elenco di aggiornamenti con i suggerimenti di @Marius

  1. Mage_WishList: sembra che rompa i dettagli del cliente
  2. Mage_Rss
  3. Mage_PayPalUk
  4. Mage_Tag (quando non utilizzato in un progetto)
  5. Mage_Poll (causa comunque chi usa i sondaggi)
  6. Phoenix_Moneybookers
  7. Mage_Sendfriend
  8. Mage_Rating (se non richiesto dal client)
  9. Mage_Bundle (se non richiesto dal cliente)
  10. Mage_Downloadable (se non richiesto dal client)
  11. Mage_GiftMessage: sembra che tu ne abbia bisogno in 1.8 o i dettagli del prodotto non funzioneranno
  12. Mage_XmlConnect - se non hai / hai bisogno di un'app mobile.
  13. Mage_Authorizenet
  14. Mage_Paypal (se non utilizzato come metodo di pagamento)
  15. Mage_Paygate (Solo se disabiliti Mage_Paypal, Mage_PaypalUk e Mage_Authorizenet)
  16. Mage_Weee (solo se disabiliti anche Mage_XmlConnect)
  17. Mage_Usa - solo in ce-1.8.1.0. (vedi sotto perché)
  18. Mage_GoogleCheckout - può essere disabilitato solo in ce-1.8.1.0 e solo se disabiliti Mage_Usa. Non funziona per le versioni precedenti a causa di questo http://www.magentocommerce.com/bug-tracking/issue/?issue=14359
  19. Mage_Oauth - se non hai bisogno dell'API REST
  20. Mage_Api
  21. Mage_Api2 - solo se disabiliti anche Mage_Oauth.

Ho appena scoperto qualcosa nel modo più duro. Non è possibile disabilitare Mage_Wishlist. In tal caso, non sarà possibile visualizzare i dettagli del cliente nel back-end.
Marius

1
Fai attenzione a disabilitare Mage_Weee. Ciò ha indotto il mio negozio a calcolare due volte le tasse (Magento 1.9.2.1).
Simon,

Risposte:


12

Posso aggiungere a quello:

  • Mage_GiftMessage - le cuciture non sono disabilitabili in 1.8
  • Mage_XmlConnect - se non hai / hai bisogno di un'app mobile.
  • Mage_Authorizenet
  • Mage_Paypal (se non utilizzato come metodo di pagamento)
  • Mage_Paygate (Solo se disabiliti Mage_Paypal, Mage_PaypalUk e Mage_Authorizenet)
  • Mage_Weee (solo se disabiliti anche Mage_XmlConnect)
  • Mage_Usa- solo in . (vedi sotto perché)
  • Mage_GoogleCheckout- può essere disabilitato solo in e solo se disabilitato Mage_Usa. Non funziona per le versioni precedenti a causa di questo http://www.magentocommerce.com/bug-tracking/issue/?issue=14359
  • Mage_Oauth - se non hai bisogno dell'API REST
  • Mage_Api
  • Mage_Api2- solo se disabiliti Mage_Oauthanche.

Come regola generale, è possibile disabilitare (quasi) qualsiasi modulo, ma è necessario verificare app/etc/modules/*.xmlse ci sono altri moduli a seconda del modulo che si desidera disabilitare. Se non ce ne sono, puoi farlo. Se ci sono, devi disabilitare anche quelli.

Come eccezione alla regola generale, ci sono alcuni moduli che possono interrompere l'amministratore se li hai disabilitati a causa del modo in cui Magento 1.x è costruito. il Mage_Adminhtmlmodulo contiene riferimenti ad altri moduli (come cliente, vendite, ...). Sembra che in Magento 2.0 questo sarà cambiato.


che dire del modulo API / API2 ... se non ne ho bisogno?
Fra

1
@Francesco. Sì. Hai ragione. Mi sono dimenticato di loro. Ho aggiornato la risposta.
Marius

cosa succede se non ho bisogno di alcun modulo di spedizione?
Fra

1
@Francesco. Guarda il mio ultimo aggiornamento a partire da "Come regola generale"
Marius

1
hmm ... sembra che questa sia una delle "eccezioni" della regola
Marius

3

Vorrei aggiungere un collegamento al modulo Magento Mock di SchumacherFM . Se si verificano problemi (leggere le eccezioni) quando si disabilitano determinati moduli, potrebbe essere una soluzione utilizzare il modulo finto. Anche se non conosco alcun test delle prestazioni relativo a questo modulo. Sarebbe interessante sapere se ci sono problemi di prestazioni con esso.


sembra un progetto molto interessante grazie per la condivisione
Fra

3

Non posso ancora commentare perché ho bisogno di un rappresentante di 50 ... quindi:

Grazie Simone per la menzione :-)

Durante lo sviluppo del Mock Module mi sono imbattuto in molte strane occorrenze di moduli diversi in luoghi diversi.

Il mio obiettivo era anche quello di rimuovere completamente i file anziché un semplice <active>false</active>.

Non puoi semplicemente disabilitare ad esempio Mage_Adminnotifications, Mage_WishList, Mage_Tag, Mage_GoogleCheckout o Mage_GiftMessage perché alcune costanti e metodi statici sono usati in Mage_Adminhtml o in alcuni moduli frontend.

Ad esempio, se disabiliti Mage_WishList o Mage_GiftMessage la sezione di modifica del cliente adminhtml non verrà più caricata.

È anche possibile disabilitare Mage_Shipping. Non riesco ancora a capire un caso d'uso per cosa serve ;-)

Se ho anche provato a creare una simulazione per un modulo Mage_Payment disabilitato e rimosso, ma ciò non è assolutamente possibile. Dopo 8-19 ore ho rinunciato.

Con il modulo Mock puoi creare la tua versione di https://github.com/colinmollenhour/magento-lite


Mage_Shippingpuò essere disabilitato se vendi solo servizi o prodotti scaricabili
Fra

Mage_GoogleCheckout può essere disabilitato in 1.8 ma penso che dovresti rimuovere anche un attributo del prodotto (available_for_googlecheckout o qualcosa del genere).
Marius

Penso che Mock sia un'idea grandiosa e intelligente! Vedi qualche problema di licenza che utilizza Magento come una sorta di framework ... quali sono i limiti della licenza secondo te?
Fra

3

Vorrei sottolineare qualcosa che ho scoperto oggi riguardo alla disabilitazione dei moduli Mage e dell'ACL. Se si utilizza un ruolo con autorizzazioni impostate su "Tutti" e si disattiva un modulo Core Mage, è probabile che il codice del modulo continui a funzionare e rompa qualcosa.

Non abbiamo bisogno di Mage_Newsletter poiché utilizziamo una soluzione personalizzata, quindi ho disattivato Mage_Newsletter Mage_All.xml. Tuttavia, ciò ha causato l'interruzione del pannello Amministratore cliente perché l'amministratore stava ancora cercando di eseguire il codice all'interno del Mage_Newslettermodulo.

Il problema è con come l'ACL controlla le autorizzazioni. Nel mio caso, all'interno della Tabs.phpclasse di blocco dei clienti , il codice che genera la scheda newsletter è incapsulato in un controllo delle autorizzazioni ACL. Poiché il Mage_Newslettermodulo è disattivato, tali opzioni ACL non vengono più visualizzate con il menu Autorizzazioni ruolo di sistema.

Tuttavia , se l'autorizzazione del tuo ruolo è impostata su "tutto", Magento non fornisce un topo volante dietro se un modulo è attivo o meno. Restituirà true (permesso consentito), consentendo l'esecuzione di qualsiasi logica gated anche se l'intenzione è quella di essere saltata.

Se si desidera chiudere i moduli principali, non è possibile utilizzare "tutto" per le autorizzazioni ACL del ruolo. Devi usare l'opzione 'personalizzata' e quindi dare manualmente al ruolo tutte le autorizzazioni necessarie. Questo è l'unico modo (che ho trovato) per assicurarsi che Magento stia controllando correttamente le autorizzazioni rispetto ai moduli disattivati.


1
Bella osservazione. +1 per i risultati relativi all'ACL e per i "topi volanti"
Marius
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.