Die Freitextfeld-Verwaltung ist die Weiterenwicklung der bisherigen Attribute in Shopware und löst die Funktion komplett ab. Die bisherigen Attribute - auch von Plugins genutzte - bleiben dabei unverändert und werden auch weiterhin verwendet! Mit Hilfe der Freitextfeld-Verwaltung kannst Du quasi allem in Shopware Freitextfelder geben und diese ganz individuell nutzen: Sei es, um Artikel als Sperrgut zu kennzeichnen oder Kunden als Bonuskunden zu markieren. Die Möglichkeiten der Individualisierung sind sehr umfangreich.
Die Freitextfeld-Verwaltung ist eine Standardkomponente, benötigt aber je nach Anwendungsfall dennoch oft Anpassungen. Beachte daher, dass wir nur den Standard Leistungsumfang supporten können. Alle Anpassungen, wie Implementierungen ins Template oder andere Arbeiten mit Freitextfeldern fallen unter den Bereich individuelle Programmierung und werden nicht supportet.
Das Modul findest Du unter Einstellungen > Freitextfeld-Verwaltung im Backend.
Das Modul gliedert sich in die folgenden Bereiche:
Grundsätzlich gibt es 4 Arten von Freitextfeldern:
Zuerst wählst Du die Tabelle aus, in der Du das Freitextfeld anlegen möchtest. Die Auflistung der konfigurierten / nicht konfigurierten Freitextfelder lädt dann erneut und zeigt Dir alle in dieser Tabelle existierenden (nicht-) konfigurierten Freitextfelder an. Falls schon Freitextfelder vorhanden sind, kannst Du diese ändern, andernfalls erstelle einfach ein neues Freitextfeld. Darauf blendet sich der rechte Bereich ein, in dem Du die Datenbank- und Anzeigeeinstellungen definieren kannst. Hier kannst Du Deine gewünschte Konfiguration vornehmen und das Freitextfeld entsprechend speichern. Nach dem Speichern werden die Datenbank-Models erzeugt, das Freitextfeld wandert in den Bereich konfiguriert und steht zur Verwendung bereit.
Grundsätzlich kannst Du jedes Freitextfeld beliebig oft ändern, beachte aber, dass der Inhalt der Freitextfelder dabei nicht verändert wird. Daher ist es erforderlich, beim Ändern des Spaltentyps oder des Entities den Inhalt zu leeren, da sonst unter Umständen falsche Daten ausgelesen werden!
Löschen ist nur bei selbst erstellten Freitextfeldern möglich! Bereits existierende oder Drittanbieter-Freitextfelder können nicht gelöscht werden!
Löschen kannst Du ein selbst erstelltes Freitextfeld mittels des roten Icons (1) im Listing:
Daraufhin wird die komplette Datenbank-Spalte samt Inhalt gelöscht.
Zuerst erstellst Du das Freitextfeld anhand des Beispiels im Bild:
Nach erstellen des Freitextfeldes findest Du das selbige in den Artikelstammdaten im Bereich der Freitextfelder:
Nun kannst Du je nach Artikel die Checkbox anhaken und die Information in den Versandkosten entsprechend berücksichtigen, das passende Tutorial zu den Versandkosten findest Du hier.
Hier erstellst Du Dir wieder das Freitextfeld:
Nun kannst Du beim Kunden das Feld mit einer entsprechenden Zahl für die Bonusklasse befüllen:
Diesen Wert kannst Du an anderer Stelle wieder aufgreifen und Deinen Kunden dadurch z.B. definierte Gutscheine anbieten. Alternativ wäre auch möglich, dass Kunden alle 10 Bestellungen eine Klasse höher gestuft werden. Hierfür wäre dann eine Anpassung nötig, die beim Auslösen einer Bestellung die Anzahl prüft und das Freitextfeld ggf. anpasst. Dies erfordert dann jedoch individuelle Programmierung.
Das Freitextfeld zur Verwendung wird wie Folgt erstellt:
Als Besonderheit ist hier zu erwähnen, dass hier mit einer Mehrfachauswahl an Kunden gearbeitet wird, so kannst Du im Gutschein selbst mehrere Kunden auswählen:
Die weitere Implementierung ist auch hier wieder individuelle Programmierung.
Deine bisherigen Attribute werden alle in die neue Freitextfeld-Verwaltung übernommen.
Freitextfelder, deren Tabellenspalten mit Großbuchstaben benannt sind, werden zwar migriert, können im neuen Freitextfeld-Managment aber nicht mehr bearbeitet werden, da dieses nur Kleinschreibung unterstützt!
Freitextfelder können für die folgenden Datenbanktabellen angelegt werden:
Element | Datenbanktabelle |
---|---|
Artikel | s_articles_attributes |
Artikel - Preis | s_articles_prices_attributes |
Artikel - Bild | s_articles_img_attributes |
Artikel - Download | s_articles_downloads_attributes |
Artikel - Link | s_articles_information_attributes |
Eigenschaften - Set | s_filter_attributes |
Eigenschaften - Gruppe | s_filter_options_attributes |
Eigenschaften - Option | s_filter_values_attributes |
Artikel - ESD | s_articles_esd_attributes |
Konfigurator - Vorlage | s_article_configurator_templates_attributes |
Konfigurator - Preis Vorlage | s_article_configurator_template_price_attributes |
Hersteller | s_articles_supplier_attributes |
Banner | s_emarketing_banners_attributes |
Blog | s_blog_attributes |
Kateorie | s_categories_attributes |
Land | s_core_countries_attributes |
Staat | s_core_countries_states_attributes |
Kunde | s_user_attributes |
Kunden - Rechnungsadresse | s_user_billingaddress_attributes |
Kunden - Lieferadresse | s_user_shippingaddress_attributes |
Warenkorb | s_order_basket_attributes |
Bestellung | s_order_attributes |
Bestellung - Position | s_order_details_attributes |
Bestellung - Rechnungsadresse | s_order_billingaddress_attributes |
Bestellung - Lieferadresse | s_order_shippingaddress_attributes |
PDF Vorlage | s_order_documents_attributes |
Kundengruppe | s_core_customergroups_attributes |
Versandkosten | s_premium_dispatch_attributes |
Product Stream | s_product_streams_attributes |
Einkaufswelt | s_emotion_attributes |
Formulare | s_cms_support_attributes |
Mail-Vorlage | s_core_config_mails_attributes |
Medien | s_media_attributes |
Zahlungsart | s_core_paymentmeans_attributes |
Artikel - Export | s_export_attributes |
Shopseite | s_cms_static_attributes |
Benutzer | s_core_autd_attributes |
Gutschein | s_emarketing_vouchers_attributes |
Kunden - Adressen | s_user_addresses_attributes |
Als Spaltentyp kannst Du die folgenden definieren:
Name | Typ |
---|---|
Einfacher Text | VARCHAR (Es wird immer 255 als Standard gesetzt!) |
Größerer Text | TEXT |
HTML-Editor | MEDIUMTEXT |
Ganzzahl | INT(11) |
Dezimalzahl | DOUBLE |
Checkbox | INT(1) |
Datum | DATE |
Datum / Zeit | DATETIME |
Combobox | MEDIUMTEXT |
Einfachauswahl | VARCHAR |
Mehrfachauswahl | MEDIUMTEXT |
Nicht alle Freitextfelder werden auch an das Frontend oder die jeweilige Funktion gereicht. Sollte das gewünschte Freitextfeld nicht zur Verfügung stehen, so musst Du dies per Plugin bereitstellen. Aus Performance-Gründen werden weiterhin nicht alle Freitextfelder im Frontend verfügbar sein. Freitextfelder, die den Artikel betreffen, werden im Standard bereits zum Template gereicht und müssen dort nur noch über eine Anpassung im Theme ausgegeben werden. Möchtest Du andere Freitextfelder im Theme nutzen, so musst Du die Integration ans Theme manuell programmieren. Weitere Infos findest Du im Developers Upgrade Guide.