Importare prodotti in Magento con Magmi

Magmi è un prodotto completamente gratuito che permette di importare in Magento file CSV con migliaia di prodotti in brevissimo tempo, Magmi infatti, a differenza della maggior parte degli altri strumenti, esegue le operazioni di import direttamente nel database di Magento.

Installazione

  • Effettuare il download di Magmi da qui
  • Scompattare il file zip scaricato all’interno della cartella principale di Magento (così facendo vi verrà creata una sottocartella “magmi”)
  • Impostare i permessi dei file e delle sottocartelle su 705
  • Aprire la url http://www.miosito.it/magmi/web/magmi.php
  • Installare da questa pagina gli extra plugin che trovate qui
  • Installate con la stessa procedura anche le utilities che trovate nella stessa pagina

Ora Magmi è pronto a lavorare ma prima dobbiamo renderlo sicuro, chiunque infatti, sfogliando il nostro sito, può incappare in Magmi e fare l’import dei prodotti che vuole.
Per ovviare questo problema, dobbiamo proteggere la cartella Magmi con utente e password, configurando il file .htaccess.
Ecco gli step da eseguire per mettere i pratica quello di cui parlo:

  • Creare una sottocartella dentro magmi nominata private
  • Collegarsi al sito htaccesstools.com e creare un file .htpasswd con utente e password personalizzate (saranno le credenziali con cui accederemo a Magmi
  • Salvare il file .htpasswd all’interno della cartella private, creata prima
  • nfine creare un file di testo denominato .htaccess ed inserirlo all’interno della cartella magmi

Il contenuto del file .htaccess dovrà essere come segue avendo cura di inserire il path giusto alla voce “AuthUserFile”:

ErrorDocument 401 default
AuthUserFile /home/zimioit/public_html/magmi/private/.htpasswd
AuthName "MAGMI - Area Protetta"
AuthType Basic
Require valid-user
RedirectMatch ^/magmi/$ /magmi/web/magmi.php

Se tutto è andato bene, andando su http://www.miosito.it/magmi/web/magmi.php vi verrà chiesto username e password e dovrete inserire le credenziali corrette per eseguire l’import dei prodotti.

Configurazione iniziale

Come già accennato, Magmi ci consente di importare i prodotti direttamente all’interno del database di Magento, per fare ciò tuttavia, necessita dei dati di accesso al database ovvero:

  • Nome host (quasi sempre localhost)
  • Nome database
  • Nome utente
  • Password
  • Table prefix (se al nome delle tabelle standard di Magento è stato aggiunto un prefisso)

I profili

Magmi ci consente di creare dei profili ad-hoc per ogni tipo di importazione, ad esempio, potremmo creare un profilo per l’import dei prodotti in vetrina, piuttosto che un profilo per importare solo le disponibilità dei prodotti oppure eseguire un import completo.
In particolare, Magmi esce dopo la prima installazione con un profilo di default, che personalmente non tocco mai e ci consente di eseguirne una copia cambiandone il nome.

I plugin

I plugin offerti di base in aggiunta al pacchetto extra plugin ci consentono piena libertà nell’importazione dei prodotti, inoltre ogni plugin è corredato di una minuta documentazione (anche se solo in inglese).
Ecco i plugin che personalmente ho testato con successo:

  1. On the fly category creator/importer: crea, se non esiste, una categoria. Il controllo viene fatto sul nome per cui, anche se questo è leggermente cambiato rispetto a quella attualmente salvata in Magento, ne viene creata una nuova.
  2. Image attributes processor: tramite questa funzionalità risulta possibilie specificare se le immagini debbano essere prese in locale (es: /var/www/html/nome/magmi/import/img) o da remoto, rinominare i nomi delle immagini, riscriverle o aggiungerle. Se si vuole associare ad un prodotto più immagini aggiungere nel CSV la colonna “mediagallery”.
  3. On the fly indexer: rigenera gli indici al termine dell’importazione di ogni elemento.
  4. Custom Options: crea un attributo personalizzato per un articolo specifico.
  5. Product Deleter: se nella colonna specifica il valore è a “1” elimina l’articolo in questione (anche i figli se selezionata l’opzione).
  6. Product Tags importazione tag dei prodotti
  7. Tier price importer: importa quantità-prezzo di un prodtto (scrittura “quantità:prezzo”). Per fare ciò occorre aggiungere una colonna al CSV.
  8. Column mapper: effettua un mapping sui valori e risulta utile nel caso della replicazione del dato su più colonne (es: per immagine grande, piccola e thumb).
  9. SKU Finder: genera l’SKU se non è presente la relativa colonna. In questi casi occorre specificare su quali altri valori presenti nel CSV l’SKU deve essere creato.
  10. Default Values setter: permette di associare ad ogni elemento dei valori di default senza dover inserire necessariamente le relative colonne nel CSV (scrittura: “colonna1,colonna2”). Nota: il nome della colonna corrisponde all’id dell’attributo presente nel pannello amministrativo di Magento.
  11. Magmi Import Limiter: importa un numero limitato di elementi nel CSV. Risulta utile se si vogliono fare delle prove.
  12. Generic mapper: fa un mapping dei valori di determinate colonne del CSV.
  13. Value Replacer: effettua il replace della riga ma la configurazione è complessa in quanto occorre specificare delle condizioni sotto forma di espressioni regolari.
  14. Value Trimmer for select/multiselect: crea gli attributi non presenti nel menu a tendina.
  15. Grouped Item processor: Crea gli articoli raggruppati se non esistono. E’ possibile specificare come trattare i singoli prodotti (visibili anche singolarmente).
  16. Configurable Item processor: Crea gli articoli coonfigurabili se non esistono.
  17. On the fly category creator/importer: crea, se non esiste, una categoria. Il controllo viene fatto sul nome per cui, anche se questo è leggermente cambiato rispetto a quella attualmente salvata in Magento, ne viene creata una nuova.
  18. Image attributes processor: tramite questa funzionalità risulta possibilie specificare se le immagini debbano essere prese in locale (es: /var/www/html/nome/magmi/import/img) o da remoto, rinominare i nomi delle immagini, riscriverle o aggiungerle. Se si vuole associare ad un prodotto più immagini aggiungere nel CSV la colonna “mediagallery”.
  19. On the fly indexer: rigenera gli indici al termine dell’importazione di ogni elemento.
  20. Custom Options: crea un attributo personalizzato per un articolo specifico.
  21. Product Deleter: se nella colonna specifica il valore è a “1” elimina l’articolo in questione (anche i figli se selezionata l’opzione).
  22. Product Tags importazione tag dei prodotti
  23. Tier price importer: importa quantità-prezzo di un prodtto (scrittura “quantità:prezzo”). Per fare ciò occorre aggiungere una colonna al CSV.
  24. Column mapper: effettua un mapping sui valori e risulta utile nel caso della replicazione del dato su più colonne (es: per immagine grande, piccola e thumb).
  25. SKU Finder: genera l’SKU se non è presente la relativa colonna. In questi casi occorre specificare su quali altri valori presenti nel CSV l’SKU deve essere creato.
  26. Default Values setter: permette di associare ad ogni elemento dei valori di default senza dover inserire necessariamente le relative colonne nel CSV (scrittura: “colonna1,colonna2”). Nota: il nome della colonna corrisponde all’id dell’attributo presente nel pannello amministrativo di Magento.
  27. Magmi Import Limiter: importa un numero limitato di elementi nel CSV. Risulta utile se si vogliono fare delle prove.
  28. Generic mapper: fa un mapping dei valori di determinate colonne del CSV.
  29. Value Replacer: effettua il replace della riga ma la configurazione è complessa in quanto occorre specificare delle condizioni sotto forma di espressioni regolari.
  30. Value Trimmer for select/multiselect: crea gli attributi non presenti nel menu a tendina.
  31. Grouped Item processor: Crea gli articoli raggruppati se non esistono. E’ possibile specificare come trattare i singoli prodotti (visibili anche singolarmente).
  32. Configurable Item processor: Crea gli articoli coonfigurabili se non esistono.

22 pensieri su “Importare prodotti in Magento con Magmi

  1. gooband dice:

    Salve, ho seguito tutte le istruzioni però non riesco a vedere i profili, mi da questa scitta
    Fatal error: Declaration of Magmi_RemoteAgent_Proxy::exec_cmd() must be compatible with that of MagentoDirHandler::exec_cmd() in /home/content/10/10030910/html/magmi/plugins/extra/general/remoteagent/magmi_remoteagent_proxy.php on line 187
    cosa devo fare adesso.
    Grazie

  2. Luna dice:

    Innanzi tutto complimenti per il blog. Avrei un problema che proprio non riesco a risolvere: quando vado ad aprire la url che dovrebbe mandarmi a magmi mi compare la pagina “404 Not found” del mio sito. Ma se controllo il percorso da filezilla il file magmi.php è nel percorso corretto dell’ftp. Cosa ho sbagliato? Sono ore che provo a risolvere…

    • Simone Ciamberlini dice:

      Ciao, controlla i permessi del file da Filezilla, tasto destro sopra magmi.php – permessi – prova a mettere temporaneamente 777 e poi provare con 644.

  3. ugo dice:

    Complimenti per il blog,
    Vengo al dunque… quando importo dei prodotti ‘grouped’ con Magmi non riesco ad ordinarli come sono in sequenza nel file .csv
    Ad esempio se ho dei guanti S,M,L,XL li trovo visualizzati a caso.
    C’è un metodo per ordinarli in fase di importazione? (a parte quello di Magento entrando sui prodotti associati al prodotto grouped ‘position’)
    grazie per ogni eventuale aiuto

    • Simone Ciamberlini dice:

      E’ una feature che è stata richiesta mi sembra ma che ancora non credo sia stata implementata!
      Bisognerebbe cambiare il codice php del preprocessore prodotti grouped…

  4. Valter Paoli dice:

    Buon giorno
    dopo l’importazione di prodotti e categorie nell’amministarzione è tutto presente, sul sito compaiono le categorie ma non i prodotti all’interno delle stesse.mi sa aiutare ?
    Grazie mille anticipate

  5. claudio dice:

    ciao simone
    ti avevo contattato ma sono riuscito a fare quasi tutto.

    quello che mi manca da capire è:
    – come per le categorie è possibile verificare e nel caso importare i produttori?
    – stessa cosa per gli attributi?

    Grazie
    Claudio

    • Simone Ciamberlini dice:

      Ciao, scusa per il ritardo, per importare gli attributi in generale e i produttori in particolare è sufficiente che inserisca nel tuo file csv da importare una colonna con il nome dell’attributo che vuoi importare!

  6. Gabriele dice:

    Ciao, ottima guida. L’ho seguita tutta tuttavia non mi apriva http://MIOSITO/magmi/web/magmi.php per 500 – Internal Server Error (..) Incorrect file/directory permissions: Above 755 oppure Incorrect Apache directives inside .htaccess file.

    Ho modificato i permessi di tutti i file più volte tramite Filezilla.
    Ho rinomino il file in .htaccess.old ed adesso funziona perfettamente, tuttavia non mi chiede più la password e l’user. Come faccio?

    • Simone Ciamberlini dice:

      se togli .htaccess è normale che non ti chieda utente e password, se mettendolo ti da errore 500 devi capire perchè andando a vedere i log di apache che di solito trovi in /var/log/httpd/error_log (se usi linux RedHat)

  7. roberto dice:

    Ciao, mi chiamo Roberto. Volevo ringraziarti per l’articolo che trovo molto ben scritto. Purtroppo però ho delle difficoltà e non riesco a risolverle. Non è la prima volta che provo ad utilizzare magmi ma le prime volte il risultato era talmente disastroso che non provavo neanché a risolvere. Oggi ho provato di nuovo per vedere se miglioravano le prestazioni. Ora il problema è questo:
    Io ho un file csv con questi campi:

    Agenzia ;Articolo ;Descrizione ;Produttore ;P. Listino; P. Esp; P. Netto; Immediata; Futura;Cod;Prodotto ;Cod;Categoria ;Cod;Sottocategoria ;Codice Articolo Fornitore ;T ;***;Inizio pro;Fine pro ;Contr.SIAE;Contr.RAEE

    Ovviamente quando vado ad importare mi dice che manca il campo SKU, come posso risolvere questo problema contando che:
    Ho la versione 1.9.1.0 di magento
    Ho provato a usare diversi campi come codice SKU ma il risultato era sempre lo stesso

  8. Vincenzo dice:

    Buongiorno Simone, questa mattina ho provato piu’ volte a caricare un file .CSV dal server Siteground in Magmi, ma ogni volta mi appare questo messaggio: Update Disabled “Upgrade/Upload function are disabled for security reasons”.
    Non capisco dove sta l’errore poichè non sono molto pratico di Magmi… Sai aiutarmi? Grazie, Vincenzo

    • Simone Ciamberlini dice:

      “Upgrade/Upload function are disabled for security reasons” significa che è il tuo hosting che ti nega la possibilità di caricare file da web. Devi abilitare qualcosa sul tuo hosting siteground o sentire il loro supporto. Magmi è fuori dal problema.

  9. Daniele dice:

    Ciao Simone.
    Ho eseguito i primi tre step dell’installazione senza problemi. Quando provo a chiamare http://www.miosito.it/magmi/web/magmi.php apre la finestra dove mi dice che il sito “richiede un nome utente e una password. Il sito riporta: “Magmi”
    Ho provato a dare i dati di accesso a Magento, ma non sono quelli,e non ho ancora creato il file .htaccess
    Ci sono dei dati di logn di default?
    Grazie

Rispondi

Leggi articolo precedente:
Buone pratiche per indicizzare Magento (SEO)

Magento è un prodotto studiato appositamente per favorire la massima indiciizzazione da parte dei motori di ricerca, tuttavia, è importante...

Chiudi