PS PrestaShop Mittel

Multishop-Duplizierung einer kompletten Kategorie — PrestaShop 8 & 9

Den Multishop-Duplizierungsassistenten installieren und nutzen: Quelle, Zuordnung der Zielshops, Kopieroptionen und Batch-Ausführung.

Aktualisiert Modulversion 1.0.0

Dieses Modul fügt dem Backoffice einen Assistenten hinzu, der eine ganze Kategorie — mit allen ihren Produkten, Kombinationen, Bildern, Attributen, spezifischen Preisen und Lagerbeständen — von einem Shop in einen oder mehrere andere Shops innerhalb desselben Multistore-PrestaShop dupliziert. Diese Dokumentation behandelt Installation, interne Funktionsweise und die schrittweise Nutzung des Assistenten.

Voraussetzungen

  • PrestaShop 8.0 bis 9.x.
  • Der Multistore-Modus muss aktiviert sein (Erweiterte Parameter, dann Multistore), mit mindestens zwei Shops.
  • Ein Mitarbeiterprofil mit Schreibzugriff auf den Katalog.

Ist Multistore deaktiviert oder existiert nur ein Shop, zeigt der Assistent eine Meldung und erlaubt keine Duplizierung: Es gäbe keinen Zielshop.

Installation

  1. Öffnen Sie im Backoffice Module und dann den Modul-Manager.
  2. Klicken Sie auf „Modul hochladen“ und legen Sie die ZIP-Datei ab.
  3. Nach der Installation erscheint unter Katalog ein Reiter namens „DF Shop Duplicator“.

Funktionsweise

Anders als ein einfacher Produktduplikator erstellt das Modul keine neuen Produktentitäten. Es baut auf dem nativen Multistore-Zuordnungs-Mechanismus von PrestaShop auf: Ein Produkt bleibt eine geteilte Entität, und nur shop-spezifische Daten werden in den Zielshop kopiert.

Konkret kopiert das Modul für jedes duplizierte Produkt die Zeilen pro Shop: product_shop, product_lang, image_shop, product_attribute_shop, stock_available, specific_price (auf den Shop beschränkt, Warenkorb ausgenommen), sowie die Frachtführer-Zuordnungen und die erforderlichen Nachschlagetabellen (Attribute, Attributgruppen, Merkmale, Hersteller, Lieferant, Steuerregelgruppe).

Direkte Folge: keine duplizierte Produktreferenz, kein erneut auf die Festplatte kopiertes Bild, und künftige globale Änderungen eines Produkts werden weiterhin an alle Shops propagiert, die es teilen.

Kategorien werden dagegen anders behandelt. Da die übergeordnete ID einer Kategorie (id_parent) global ist, lässt sich ein Baum nicht einfach unter einem anderen Übergeordneten „zuordnen“. Das Modul erstellt daher neue Kategorien unter dem von Ihnen bestimmten Zielelternteil — oder verwendet vorhandene wieder, je nach gewählter Option.

Den Assistenten in 3 Schritten nutzen

Schritt 1 — Quellshop und -kategorie

Wählen Sie den Ausgangsshop und dann die zu duplizierende Kategorie im Baum. Aktivieren Sie „Unterkategorien einschließen“, wenn Sie den gesamten Zweig und nicht nur die ausgewählte Kategorie verarbeiten möchten. Die Anzahl der betroffenen Produkte wird zur Orientierung angezeigt.

Schritt 2 — Zielshops und Zuordnung

Aktivieren Sie einen oder mehrere Zielshops. Für jeden aktivierten Shop erscheint ein Kategoriebaum: Bestimmen Sie darin die Zielkategorie, unter der die Produkte (und optional der Baum) abgelegt werden. Standardmäßig ist die Wurzel des Zielshops vorausgewählt.

Schritt 3 — Optionen und Ausführung

Stellen Sie die Kopieroptionen ein (siehe nächster Abschnitt), prüfen Sie die Zusammenfassung und starten Sie dann die Duplizierung. Ein Fortschrittsbalken und ein Live-Protokoll zeigen den Fortschritt Produkt für Produkt sowie etwaige Warnungen.

Die Optionen im Detail

  • Baum kopieren: erstellt die Unterkategorien unter der Zielkategorie unter Beibehaltung der Hierarchie neu. Deaktiviert werden alle Produkte direkt unter der Zielkategorie abgelegt („Flatten“-Modus).
  • Vorhandene Kategorien wiederverwenden: statt Kategorien neu zu erstellen, findet das Modul die bereits unter dem Zielelternteil vorhandenen anhand ihrer URL-Umschreibung. Das macht die Duplizierung idempotent.
  • Mengen kopieren: dupliziert den Lagerbestand in den Zielshop (siehe Lagerverwaltung unten).
  • Spezifische Preise: kopiert die auf den Shop beschränkten spezifischen Preise.
  • Paketprodukte (rekursiv): verknüpft auch die Kindprodukte der in der Auswahl enthaltenen Pakete.
  • Suche neu indizieren: indiziert jedes kopierte Produkt für die Front-Office-Suche neu. Nützlich, aber bei großen Mengen langsamer.
  • Batch-Größe: Anzahl der pro AJAX-Durchlauf verarbeiteten Produkte (standardmäßig 20, bis zu 200). Verringern Sie sie bei eingeschränktem Hosting, erhöhen Sie sie für mehr Tempo.

Kategorien neu erstellen und wiederverwenden

Ist „Vorhandene Kategorien wiederverwenden“ aktiviert, sucht das Modul unter dem Zielelternteil nach einer Kategorie, deren URL-Umschreibung mit der Quelle übereinstimmt. Findet es eine, verwendet es sie; andernfalls erstellt es eine neue. So können Sie die Duplizierung beliebig oft erneut ausführen, ohne doppelte Kategorien anzuhäufen — etwa nach dem Hinzufügen neuer Produkte zur Quelle.

Für eine erste „flache“ Synchronisierung, bei der alle Produkte unter einer einzigen Zielkategorie landen sollen, deaktivieren Sie „Baum kopieren“ und lassen „Vorhandene Kategorien wiederverwenden“ aktiviert.

Lagerverwaltung und Teilung zwischen Shops

Das Kopieren des Lagerbestands berücksichtigt die Lagerteilungs-Einstellung der Shop-Gruppe. Teilen sich Quell- und Zielshop bereits denselben Bestandspool, wird die Kopie übersprungen: Ein Duplizieren der Mengen würde Inkonsistenzen erzeugen. Andernfalls werden die Mengen in den Zielshop kopiert. Diese Entscheidungen werden im Ausführungsprotokoll festgehalten.

Paketprodukte

Enthält die Auswahl Pakete und ist die entsprechende Option aktiviert, verknüpft das Modul die Kindprodukte jedes Pakets rekursiv mit dem Zielshop, damit das Paket verkäuflich bleibt. Ein Schutz verhindert Schleifen bei verschachtelten Paketen.

Große Kataloge und Wiederaufnahme

Die Ausführung läuft als aufeinanderfolgende AJAX-Batches: Der Browser reiht die Aufrufe bis zum Ende aneinander, was jeden PHP-Timeout selbst bei mehreren tausend Produkten und Kombinationen vermeidet. Der Job wird in der Datenbank persistiert (eigene Tabelle), mit einem Positionszeiger: Wird die Verarbeitung unterbrochen (Tab geschlossen, Netzwerkausfall), kann sie dort fortgesetzt werden, wo sie stehen blieb, statt von vorn zu beginnen.

Fehlerbehebung

Der Assistent meldet, dass Multistore nicht verfügbar ist

Prüfen Sie, ob der Multistore-Modus aktiviert ist und mindestens zwei Shops existieren. Der Assistent benötigt einen Quellshop und mindestens einen davon verschiedenen Zielshop.

Einige Produkte scheinen im Zielshop zu „fehlen“

Stellen Sie sicher, dass die Zielkategorie in Schritt 2 korrekt zugeordnet ist und die Produkte aktiv sind. Im „Flatten“-Modus werden Produkte unter der einzigen Zielkategorie abgelegt, nicht unter einem neu erstellten Baum.

Der Lagerbestand wurde nicht kopiert

Das ist das erwartete Verhalten, wenn beide Shops denselben Bestandspool teilen. Das Ausführungsprotokoll weist mit einer Warnung darauf hin.

Nach einem zweiten Durchlauf sehe ich doppelte Kategorien

Aktivieren Sie „Vorhandene Kategorien wiederverwenden“. Ohne diese Option erstellt jeder Durchlauf neue Kategorien unter dem Zielelternteil.

War diese Seite hilfreich?

Immer noch nicht weiter? Support kontaktieren