Magento – Produktattribut basierend auf Benutzereingaben während der Angebots-/Auftragserstellung
Einführung
Dieser Artikel bietet Lösungen für Erstellen Sie ein benutzerdefiniertes Produktattribut, das nicht in Produkten gespeichert oder auf der Produktbearbeitungsseite angezeigt wird. Stattdessen werden sie in Bestell-/Angebotspositionen gespeichert und auf Bestellungen, Rechnungen und anderen zugehörigen Dokumenten angezeigt. Darüber hinaus kann es vom Kunden im Frontend konfiguriert werden, bevor er ein Produkt in den Warenkorb legt.
Problemdefinition
- Fügen Sie ein benutzerdefiniertes Produktattribut hinzu nicht Teil der Standardproduktattribute oder benutzerdefinierten Optionen.
- Das Attribut sollte für Kunden auf der Produktseite sichtbar und konfigurierbar sein, bevor es in den Warenkorb gelegt wird.
- Der Wert des Attributs sollte mit gespeichert werden der Angebots-/Bestellartikel.
- Der Wert des Attributs sollte auf Bestellungen, Rechnungen, Verkaufs-E-Mails und anderen relevanten Dokumenten angezeigt werden.
- Bieten Sie die Möglichkeit, Auftragssammlungen basierend auf dem Wert des Attributs zu filtern.
Lösung
Erfassen, Validieren und Speichern des Attributwerts
-
Ereignis Beobachter:Verwenden Sie einen Ereignisbeobachter wie „catalog_product_load_after“, um den Wert des Attributs zu erfassen und zu speichern.
-
Kundeneingabe:Fügen Sie der Produktseite ein Formularelement hinzu, um Kunden die Eingabe zu ermöglichen Der Wert des Attributs.
-
Validierung:Validieren Sie die Kundeneingabe auf der Serverseite, um sicherzustellen, dass sie den angegebenen Kriterien entspricht.
-
Zusätzliche Optionen: Speichern Sie den validierten Wert im Schlüssel „additional_options“ des Arrays „custom_options“ des Produktmodells.
Anzeige des Attributwerts
-
Anzeige von Bestellung und Rechnung : Passen Sie die Bestell- und Rechnungsvorlagen an, um den Wert des Attributs neben anderen Produktdetails anzuzeigen.
-
E-Mail-Anzeige: Aktualisieren Sie die Verkaufs-E-Mail-Vorlagen, um den Wert des Attributs in die relevanten Abschnitte aufzunehmen.
Auftragssammlung filtern
-
Benutzerdefiniertes Attribut: Erstellen Sie ein benutzerdefiniertes Attribut in der Datenbank, um den Wert des Attributs zu speichern.
-
Ereignisbeobachter: Verwenden Sie einen Ereignisbeobachter wie sales_convert_quote_item_to_order_item, um das benutzerdefinierte Attribut zu füllen.
-
Auftragssammlung: Fragen Sie die Auftragssammlung mit ab Wert des benutzerdefinierten Attributs als Filterkriterium.
Unterstützung für Nachbestellungen
Um sicherzustellen, dass der Wert des Attributs während Nachbestellungen erhalten bleibt, verwenden Sie einen Beobachter für Checkout-Ereignisse, z. B. checkout_cart_product_add_after. um den Attributwert in die Angebotsposition zu kopieren.
Übersetzung
- Verwenden Sie Ereignisbeobachter, um die Beschriftung und den Wert des Attributs in Angebots- und Auftragspositionen zu übersetzen.
- Überschreiben Sie bei Bedarf die Standardanzeigevorlagen, um die Übersetzung zu übernehmen.
Das obige ist der detaillierte Inhalt vonWie erstelle ich ein dynamisches Produktattribut in Magento basierend auf Benutzereingaben während der Angebots-/Auftragserstellung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!