Blog

Magento 2: Come affrontare problemi di incompatibilità tra moduli

  |   E-commerce, Magento2 - Magento

Per costruire un e-commerce di successo spesso e volentieri è necessario sviluppare moduli custom-made o integrare moduli di terze parti a quelli già presenti su Magento (chiamati moduli core) sia per modificare funzionalità già esistenti che per implementarne di nuove.

Può capitare però che l’installazione di nuovi moduli risulti in problemi di compatibilità con i moduli già presenti su Magento. Di seguito vedremo le cause più comuni e gli step da seguire per risolvere questi problemi.

Quali fattori causano l’incompatibilità?

Tra le cause più comuni di incompatibilità tra moduli vi sono:

  • Customizzazioni

Ogni e-commerce Magento ha esigenze diverse e, di conseguenza, necessita di personalizzazioni ad hoc. Sia che riguardino l’esperienza di navigazione dei visitatori, o la gestione di ordini e magazzino (per fare alcuni esempi), i programmatori esperti Magento si troveranno spesso a dover modificare le funzionalità base offerte da Magento andando a estendere o sovrascrivere i moduli core. Tali modifiche ai file (per quanto spesso inevitabili) possono risultare in problemi di compatibilità con i moduli custom o quelli di terze parti.

  • Versioni di PHP e MySQL

Tutti gli sviluppatori di moduli devono aderire ai requisiti necessari per Magento riguardo

alle versioni di PHP e MySQL. Attualmente per l’ultima versione di Magento (2.2) i requisiti sono PHP 7.0.13 o superiore e MySQL 5.6 o 5.7. Può capitare, tuttavia, che alcuni e-commerce rimangano su server con versioni di PHP e MySQL non più supportate, esponendo il sito a rischi sia di sicurezza informatica che di incompatibilità tra moduli.

Se vuoi saperne di più riguardo ai requisiti di sistema necessari per un e-commerce sempre aggiornato e supportato al top consulta le nostre soluzioni per hosting su server ottimizzati per Magento 2.

Come procedere in caso di problemi di compatibilità

  1. Controllare i messaggi di errore

La prima cosa da fare è passare in Developer Mode tramite il comando SSH php bin/magento deploy:mode:set developer . In questo modo potremo leggere lo specifico messaggio di errore fornito da Magento e avere maggiori indicazioni sulle cause del problema.

  1. Disabilitare il nuovo modulo e/o i moduli già installati

Per disabilitare un modulo eseguire il comando SSH php bin/magento module:disable Nome_Modulo . In alternativa, si può provare disabilitando tutti i moduli di terze parti e lasciando solamente il nuovo modulo. Per fare ciò possiamo usare lo stesso comando di prima aggiungendo più moduli al comando separati da uno spazio (php bin/magento module:disable Nome_Modulo1 Nome_Modulo2). In questo modo sarà possibile capire se l’errore è causato dal nuovo modulo o da moduli già presenti che interferiscono con il sistema in generale e col nuovo modulo in particolare.

  1. Trova il modulo che causa l’errore

Nel caso in cui l’errore non sia causato esclusivamente dal nuovo modulo, si può procedere disabilitando i moduli già presenti uno ad uno per identificare e debuggare il problema di incompatibilità.

Seguendo questi passi sarà chiaro da dove proviene il problema e sarà più semplice procedere per risolverlo.

Se necessiti di assistenza, noi di Kom in quanto agenzia Magento specializzata nel costruire soluzioni personalizzate siamo sempre disponibili a richieste di assistenza per il tuo e-commerce .

 

Davide B.