Catalogusimport van meerdere leveranciers voor Magento 2
Importeer en synchroniseer enorme leverancierscatalogi — producten, prijzen, voorraad, afbeeldingen — vanuit elke feed, automatisch en volgens planning, zonder je handmatig aangemaakte producten aan te raken. Ontworpen voor catalogi met tienduizenden tot honderdduizenden artikelen.
✓ Licentie direct actief na betaling, ontvangen per e-mail
✓ Directe installatie via Composer
✓ Eerste domeinwijziging inbegrepen en direct (handig voor staging → productie)
✓ Compatibel met Magento 2.4.x (getest op 2.4.9) en met het Hyvä-thema
De volledige beheerinterface — elk label, elke tooltip en handleiding — is beschikbaar in:
Magento toont de module automatisch in de taal die elke beheerder heeft ingesteld — geen extra configuratie nodig.
Dit zijn echte metingen uit een productieomgeving, geen laboratoriumschattingen — een live webshop die een echte, grote leverancierscatalogus synchroniseert (honderdduizenden SKU's, honderdduizenden afbeeldingen) op gewone, niet-exotische serverhardware.
| Test | Volume | Resultaat |
|---|---|---|
| Volledige catalogussync (producten, prijzen, voorraad, categorieën) | 339.707 feedregels | 2 min 01 s, 0 fouten |
| Alleen voorraad- en prijssync | 340.467 feedregels | 7,2 s, 0 fouten |
| Doorvoersnelheid directe schrijfstrategie (SQL, batchgewijs) | 500 producten/batch | ~600 producten/seconde |
| Parallel vs. sequentieel downloaden van afbeeldingen | dezelfde afbeeldingenset | 3,9 keer sneller |
| Catalogusomvang verwerkt in productie | tot 708.000 afbeeldingen | gecomprimeerd en in de wachtrij gezet zonder de catalogussync te blokkeren |
Testserver: 12-core Intel Xeon E5-2690 @ 2,90GHz, 10GB RAM, PHP 8.5, met de database op een aparte dedicated server — een standaard middenklasse-opstelling, geen high-end hardware. De 600 producten/seconde staat tegenover ongeveer 1 product/seconde met Magento's eigen importmechanisme op dezelfde gegevens.
De volledige installatiestappen en een gedetailleerde gebruikershandleiding, veld voor veld (mapping, formules, configurable en grouped producten, categorieën, afbeeldingen, planning, CLI), staan op hun eigen referentiepagina:
Niet tevreden binnen 30 dagen na aankoop? Vraag zelf een terugbetaling aan vanuit je accountgebied (codingrow.com/login), zonder vragen. De terugbetaling wordt direct en automatisch verwerkt, en de licentie wordt na bevestiging gedeactiveerd.
Huidige versie: v3.9.0
Toegestane feedcategorieën kunnen nu op elk niveau van de feedboom worden gekozen, niet alleen op het topniveau: kies een diepe tak (of een enkel blad) — bijv. Meubels › Kasten en opbergen — om alleen die subboom te importeren in plaats van een hele hoofdcategorie. Het filtert alleen welke producten worden geïmporteerd; de Magento-categorieboom verandert niet (producten behouden hun volledige pad).
Mapping-formules ondersteunen nu afrondingsfuncties naar hele getallen: ceil() (naar boven), floor() (naar beneden) en round() (dichtstbij) — bijv. ceil({B2B price} * 1.30) past de marge toe en rondt de uiteindelijke verkoopprijs af naar boven op het volgende hele getal (23,40 → 24).
Verfijning van de sitemap-afstemming uit 3.3.9: op de 301-redirects met categoriepad schrijft de module nu dezelfde metadata die Magento native toekent aan URL's met categoriecontext, zodat de sitemap-generator correct alleen de platte canonieke URL vermeldt in plaats van die welke een 301 doet. Producten die na de update zijn geïmporteerd of bijgewerkt zijn al in orde; om bestaande rijen op bijgewerkte installaties in één keer af te stemmen is het commando mmis:fix-redirect-metadata beschikbaar (daarna de sitemap opnieuw genereren).
Product-URL's respecteren nu de Magento-instelling (Catalog SEO) 'Use Categories Path for Product URLs'. Wanneer die uit staat (de standaard van Magento), is de platte product-URL de enige canonieke en wordt de URL met categoriepad als 301-redirect daarnaartoe geserveerd, zodat de sitemap en de canonical-tag overeenkomen en Google op één URL consolideert. Wanneer die aan staat, blijft de URL met categoriepad actief, zoals Magento die native genereert.
Accepteert nu de One-for-All abonnementslicentiesleutel: één enkel Codingrow-abonnement activeert deze module samen met alle andere.
Nieuwe mapping-transformatie «Strip HTML tags»: verwijdert HTML-tags en decodeert entiteiten uit de tekstwaarden van de feed, handig wanneer de leverancier beschrijvingen verstuurt die al in HTML zijn opgemaakt.
New "Strip HTML tags" transform for mapping rows: removes HTML markup and decodes entities from a source column's value, for text attributes (e.g. a supplier description feed that comes wrapped in <p>/<b> tags). Also available as a template function (striphtml{ColumnName}).
Fixed an installation bug: setting up the module for the first time on a brand-new store could fail during Magento's setup with a database error, because a required file was missing from the release package.
Products whose supplier feed left the image column normally used for the storefront thumbnail (Base/Small/Thumbnail) empty — while still having other image columns filled in — no longer end up with no thumbnail on category/listing pages. The module now promotes the first available image automatically (can be turned off per profile).
The "updated" count in sync results no longer includes rows where price/stock stayed exactly the same as before — only real changes are now counted and written, which also makes syncs with few or no real changes noticeably faster.
All batch sync log messages (main_sync/offer_sync) now follow the language of the admin who's reading them, instead of the language of the server process that ran the cron.
The image queue's "Last runs" now reports the count and outcome for that specific run instead of a running total, with an accurate average; fixed two email notification labels that were never translated.
The image sync queue is dramatically faster on large catalogs (a query rewrite removed a bottleneck that scaled with queue size), batch size now adapts automatically to the real processing rate, and MMIS cron jobs run in their own isolated group so they no longer compete with reindex/email/sitemap crons. The estimated time remaining for a running queue is now based on the actually measured rate instead of a simple linear extrapolation.
De tijd die de module wacht voordat de feed van een leverancier opnieuw wordt gedownload (om bij herhaalde tests niet onnodig het dagelijkse downloadquotum van een leverancier te verbruiken) is nu instelbaar onder Stores > Configuration, in plaats van vast op ongedocumenteerde 30 minuten — standaard 15 minuten.
Een leeg SKU-voorvoegsel bij een profiel is nu altijd een veilige, volledig ondersteunde keuze: de enige plek verholpen waar dit onbedoeld de gecachete bestanden van een ander profiel kon beïnvloeden, en de veiligheidscontrole verwijderd die de rollback daarom voorheen blokkeerde.
De logberichten van de afbeeldingenwachtrij in "Ultime esecuzioni" worden nu getoond in de taal van de admin die de pagina bekijkt, in plaats van altijd de standaardtaal van de winkel.
Een vertaalprobleem verholpen dat het voortgangsbericht van de afbeeldingenwachtrij in het Engels kon laten staan op niet-Engelse winkels, en de bijbehorende schatting van de resterende tijd gerepareerd zodat deze onafhankelijk van de taal van de admin werkt.
Alle berichten in het synchronisatielogboek (voortgang, fouten, e-mailmeldingen) volgen nu de taal van de winkelweergave in plaats van altijd Italiaans te zijn. De geschatte opslagruimte voor afbeeldingen onderscheidt profielen met uitgeschakelde compressie correct, in plaats van een misleidende „0% reductie” te tonen.
Compressie van gedownloade afbeeldingen is nu een instelling per profiel (tabblad Mapping), niet langer gedeeld door alle profielen — handig wanneer de ene leverancier schijfruimte moet besparen en de andere niet.
Nieuwe optie per profiel (tabblad Geavanceerd) om M2E Pro te informeren aan het einde van een synchronisatie, voor wie dezelfde producten via die extensie ook naar marketplaces synchroniseert.
Taalkundige verfijning: alle resterende Italiaanse tekst (CLI-commando's, logberichten, configuratie-tooltips, foutmeldingen) is vertaald naar het Engels als basis voor de overige ondersteunde talen.
Eerste publieke release, hernoemd naar MMIS (Massive Multifeed Import&Sync), met CLI-commando's onder het voorvoegsel mmis:. Belangrijkste nieuwe functies:
Interne ontwikkelingsfase: introductie van de Importprofielen-architectuur, feed- en categoriedetectie per profiel, apart tabblad voor synclogboek.
Eerste interne mijlpalen: multi-formaat feedverwerking (CSV/XML/JSON) en de eerste mapping-engine voor velden.