Hallo, wie kann ich die Freitextfelder in den Bestellungen (s_order_attributes) nutzen? Vielen Dank
hallo, kann mir niemand sagen wie ich die freitextfelder in der bestellung nutzen kann? wenn ich direkt etwas in die datenbank schreibe wird das dann auch in der übersicht der bestellung angezeigt. es muss doch aber auch einen weg geben das über das system zumachen. ich würde zb. gern zusätzliche formularfelder in den freitextfeldern speichern. geht das? bin für jeden tipp dankbar.
Hallo, was möchtest du denn genau machen? Das genannte Attribut ist ja für eine Bestellung gedacht. Du musst also die Inhalte selber dirt über eine Erweiterung rein schreiben. Es gibt ja zusätzlich auch noch Freitextfelder bei Rechnungs- und Lieferadresse. Da du hier von Formularen sprichst, kann man due ggf. auch für deine Zwecke nutzen. Im Kontobereich und bei der Registrierung kannst du also Daten abfragen, die du dann direkt beim Kunden global hinterlegt hast. Vielleicht kannst du deine Funktion genauer beschreiben und dann kann man auch die dafür gedachten Felder passend nutzen/nennen.
Hallo, danke für deine antwort. die freitextfelder bei den kundendaten kann ich nicht nutzen da ich die zusätzlichen infos in der bestellung brauche. ich möchte dem kunden einfach die möglichkeit geben beim checkout zusätzliche angaben zu machen. zb. ob er einen montageservice möchte oder die angabe eines wunschliefertermins. hierzu würde ich gern das formular im checkout erweitern und die entsprechenden werte dann in den freitextfeldern speichern. wie ich das template entsprechend erweitere weiss ich. ich kann auch einen event über ein plugin registrieren. aber ich weiß nicht wie ich die post-variablen dann abfangen kann. ich hätte gedacht, dass die felder einfach speziell ( zb.: sBasket[o_attr1]) benannt werden müssen und dann automatisch in die db-geschrieben werden. vielen dank.
gibt es echt keine möglichkeit zusätzliche formularfelder im checkout in die datenbank zuschreiben? auf welchem wege sollen die freitextfelder in den bestellungen denn normalerweise gefüllt werden? im backend habe ich ja auch keine möglichkeit dazu oder? vielen dank.
das könnte ich auch für ein aktuelles Plugin gebrauchen. Hätte auch gedacht, dass man einfach auf $_POST zugreifen kann. Das funktioniert aber scheinbar nicht… Mich würde auch interessieren, wie die Verwendung dieser Felder gedacht ist.
Hallo, ich würde das Thema gern noch mal nach oben bringen. Es muss doch einen einfachen Weg geben, die Attribut-Felder für die Bestellung zu füllen. Ich habe jetzt einen Hook auf Shopware_Controllers_Frontend_Checkout::saveOrder::before gemacht. Das funktioniert auch soweit, nur kann ich auf mein zusätzliches Feld im Checkout nicht zugreifen. ich habe im Block {block name=“frontend_checkout_confirm_shipping”} einfach ein Formularfeld hinzugefügt: <input type="text" id="o_attr_1" name="o_attr_1" value="" class="text grid_3">
meine Plugin-Methode sieht so aus: public function onSaveOrder(Enlight\_Hook\_HookArgs $args) { $order = $args-\>getSubject(); Shopware()-\>Log()-\>log('AGB:: '.$order-\>Request()-\>getParam('sAGB') ,Zend\_Log::INFO); Shopware()-\>Log()-\>log('attr1:: '.$order-\>Request()-\>getParam('o\_attr\_1') ,Zend\_Log::INFO); }
Bei AGB wird “on” ausgegeben. Bei attr1 nichts. Muss ich das Feld erst irgendwie bekannt machen? Vielleicht bin ich auch einfach zu blöd, aber ich versteh es einfach nicht… Könnte mir da mal jemand auf die Sprünge helfen? vielen Dank.
Wird denn das Inputfeld auch wirklich beim Request mit übertragen, also in den POST- Daten sichtbar? LG René
Hallo René, [quote=“plotterinsel”]Wird denn das Inputfeld auch wirklich beim Request mit übertragen, also in den POST- Daten sichtbar? [/quote] scheinbar nicht. Ich weiß aber nicht warum. Das Feld ist korrekt ins Formular eingebunden.
Das kann dir dann nur der Seitenquelltext verraten . Wichtig ist, das das Inputfeld auch wirklich im Formular ist (also zwischen den
... Tags). Klingt trivial aber mir ist es durch die ganze Template und Blockvererberei auch schon passiert das ich das sowas ausserhalb hatte. Wichtig ist auch, das beim Absenden des Formulars auch wirklich ein Value existiert, also was drin steht in dem Feld, sonst wirds nicht übertragen. Am besten siehst du das im Firebug-\>Netzwerk . Da müsstest du als erstes mal Prüfen ob das Feld und der Wert zum Server gesendet werden. LG Renéhhmm… also ich hab das jetzt noch mal alles geprüft. das input ist korrekt eingebunden. es scheinen aber an dieser stelle gar keine post-daten zur Verfügung zu stehen. evtl. ist saveOrder gar nicht die richtige Methode zum hooken? ich habs auch mit calculateShippingCostsAction versucht aber da ruft er meine Plugin-Methode gar nicht erst auf… sonst noch einen Tipp? es kann doch eigentlich nicht so schwer sein oder? Ich stehe irgendwie auf’m schlauch…
hm… dann versuchs mal mit Shopware()-\>System()-\>\_POST['o\_attr\_1']
LG René
ok, ich hab jetzt den Denkfehler gefunden. Ich habe das zusätzliche Input in das Formular mit der Versandart gepackt, das wird aber beim Checkout ja gar nicht abgeschickt sondern nur, wenn man die Versandart ändert bzw. auf “ändern” klickt. Ins richtige Form-Tag gepackt und nun läuft es auch. Trotz dem vielen dank. Gruß, H.
Siehste! Deswegen immer erstmal schauen ob bei dem Request die Felder auch wirklich mitgesendet werden Na denn viel Spass weiterhin LG René
Gibt es in Shopware 4 eine Möglichkeit, die Freitextfelder der Bestellung beim Checkout zu nutzen? Ich finde dazu leider weder eine Anleitung noch ein Plugin und möchte gerne ein zusätzliches Feld bei der Bestellung füllen. Könnt ihr mir weiterhelfen?
Es lebe die Shopware Community … oder auch nicht Mich würde das auch mal interessieren.
wollt das Thema mal wieder nach oben bringen. das würd mich nämlich auch stark interessieren. also ich hätte gerne während des bestellvorgangs Ein feld in dem die kunden wünsche schreiben können die dann bei uns in der email angegeben werden.
Hallo Nina, das geht in den Grundeinstellungen. Dort kannst du angeben das du Kommentare bei der Bestellung haben möchtest. Es wird dann ein Feld im Checkout angezeigt und in der Email ausgegeben. Lg
[quote]das geht in den Grundeinstellungen. Dort kannst du angeben das du Kommentare bei der Bestellung haben möchtest. Es wird dann ein Feld im Checkout angezeigt und in der Email ausgegeben. [/quote] Grundeinstellungen>Storefront>Bestellabschluss und dann “Zeige weitere Optionen an” ankreuzen? hab ich jetzt einfach mal angekreuzt, aber wenn ich dann einen artikel bestelle kann man nur gutscheincode und artikelnummer eingeben, kein kommentar. ich seh warscheinlich grad den wald vor lauter bäumen nicht Aber vielen dank für die mühe
Hi Nina, mir gehts genau wie Dir. Bist Du hier weitergekommen? Ich sehe das Kommentarfeld nämlich auch nicht. Ah jetzt ja: Manchmal hilft es den Cache zu leeren