Met behulp van een cronjob kun je de Magento product import automatiseren. Dat is handig als je bijvoorbeeld  gebruik maakt van een data warehousing systeem die producten en voorraden exporteert. Deze kun je vervolgens automatisch importeren in jouw webshop.

In dit artikel leggen we je stap voor stap uit hoe je product importeert in jouw Magento shop met een cronjob.

Maak de import/export mappen aan

  • Log in op je webruimte via FTP of SSH.
  • Maak de volgende mappen:
    1. domein.nl/var/import
    2. domein.nl/var/export
    3. domein.nl/var/log

Plaats het import script op je webruimte

  1. Download het import script
  2. Pak het .zip bestand uit en upload het .php bestand naar je domein.nl map
  3. Bereid twee bestanden voor: het import bestand met alle producten en een test bestand met niet te veel producten (bijv. 20)
  4. Upload de bestanden naar domein.nl/var/import.

Maak een import profiel in Magento

  1. Login in de backend van je Magento shop.
  2. Ga naar System->Configuration.
  3. Onder het kopje Advanced klik je op de optie Developer.
  4. Klik op Log settings en stel Enabled in op Yes (zie afbeelding 1).
  5. Klik op Save Config.
  6. Ga naar System->Import/Export->Dataflow – Profiles.
  7. Klik op Add New Profile.
  8. Vul de volgende gegevens in (zie afbeelding 2) :
    1. Number of records: 50
    2. Data transfer: Local/Remote Server
    3. Type: Local Server
    4. Filename: import_test.csv
    5. Path: var/import
  9. Klik op Save Profile.

Log settings enablen

afb.1 Log settings enablen

Magento product import

afb.2 Magento product import

Test je import profiel

  1. Open het net aangemaakte import profiel (zie afbeelding 3).
  2. Klik links in het menu op Run profile.
  3. Klik op Run profile in Popup om te controleren of er nieuwe producten in je shop zijn gekomen.
  4. Als dit lukt, pas je het profiel weer aan door bij Filename import_all_prodcts.csv op te geven.

Magento pofile list

afb. 3 Magento profile list

Cronjob instellen voor de import

Nu alles in Magento goed staat, is het tijd om via een cronjob in te stellen wanneer het importscript precies moet gaan draaien. Volg hiervoor de handleiding op de pagina Cronjobs (periodieke taken) instellen.

Dit ziet er dan ongeveer als volgt uit (31 juli om 16:10) :

# m  h dom mon dow   command
10 16  31  7  *     php5 -f /home/users/uwshortname/domein.nl/magento_product_import.php 8

Let op! De 8 in bovenstaand voorbeeld is het ID nummer van het import profiel dat je hebt aangemaakt in Magento.

Resultaten bekijken

Wanneer je op de hoogte wilt blijven van de status van de import, kun je het bestand byte_import.log gebruiken. Dit bestand is te vinden onder domein.nl/var/log/. Je kunt dit ook via SSH bijhouden door onderstaand commando te gebruiken:

tail -f domein.nl/var/log/byte_import.log
71