Fix Magento Errore 404 quando inserisci una recensione da admin.
Nelle versioni di Magento dalla 1.7 alla 1.9 (non ho avuto modo di provare in quelle precedenti) è presente un bug che in caso di installazione con più Viste negozio impedisce di inserire recensioni dal lato amministrativo, portando ad un errore 404.
Questo errore appare solo nel caso che la tua installazione di Magento usi la funzione del Multi Store View, per installazioni di Magento standard con un unico negozio e unica vista il problema non appare.
L’URL che restituisce l’errore è /admin/catalog_product_review/new/key
Da cosa è dovuto l’errore?
Dopo aver controllato tutti i componenti presenti nel sito dove ho avuto per la prima volta questo errore; dopo aver perso ore a cercare incompatibilità varie tra temi componenti e altro; dopo aver provato a installare un nuovo Magento, che non presentava il problema perchè con singolo Store e singola Store View, ma che si è ripresentato appena ho aggiunto le ulteriori viste per gestire il multilingua del sito ho iniziato a controllare i file del pacchetto di base.
Nel file che gestisce la funzione di inserimento di nuove recensioni è stato inserito un controllo che non tiene conto dei vari Store View ma richiama direttamente “default” come vista.
Come risolvere il problema?
La correzione è molto semplice anche se richiede una modifica ad un file PHP.
Scarica il file app/code/core/Mage/Adminhtml/Block/Review/Rating/Detailed.php in locale sul tuo pc.
Con un editor di testi (notepad, notepad ++ o altri simili, ma NON con editor di testi avanzati come Word, Openoffice, ecc) apri il file Detailed.php e cerca la riga:
->setStoreFilter(Mage::app()->getStore('default')->getId())
(dovrebbe essere verso la riga 74)
e sovrascrivila con:
->setStoreFilter( ($default_store)
? $default_store->getId()
: Mage_Core_Model_App::ADMIN_STORE_ID )
Salva il file e caricalo nella cartella app/code/local/Mage/Adminhtml/Block/Review/Rating/
La cartella quasi sicuramente non sarà presente e ti consiglio di crearla, questo per non sovrascrivere il file originale di Magento ma usare il più corretto metodo di sostituzione dei files, infatti Magento andrà a controllare se presente il file nella cartella app/code/local e userà questo al posto di quello presente in app/code/core (che è quello base standard di Magento)
Una volta eseguita questa operazione ti sarà possibile inserire recensioni lato amministrativo anche in Magento CE configurato per il Multi Store View.
Commenti
Ancora nessun commento.