Probleme mit leeren selbsterstellten Feldern

  • Hallo,
    ich bin am Verzweifeln, ich suche nun schon seit Tagen (ohne Erfolg).
    Ich habe bei einigen Produkten selbsterstellte Felder, für zusätzliche Wünsche. Jetzt benötige ich eine Lösung, wenn der Kunde keine zusätzlichen Wünsche hat, das Textfeld also leer bleibt. Bisher wird im Warenkorb dann trotzdem der Titel des Feldes angezeigt, dahinter steht dann natürlich nichts, dies verwirrt aber.
    Bisher habe ich zwei Lösungsansätze, finde aber für keinen ein wirkliche Lösung:
    1. Wenn das Feld leer ist, übertrage Titel und Feldinhalt nicht mit in den Warenkorb.
    Oder
    2. Wenn das Feld leer ist, zeige auch den Titel des Feldes im Warenkorb nicht an.
    Hat jemand eine Idee: Wie könnte man eine der beiden Varianten (oder eine andere Möglichkeit für diesen Zweck) realisieren?


    Vielen Dank


    Maik

  • Hallo Maik,


    um dir besser zu Helfen, wäre es gut wenn Du uns immer die JoomlaVersion und die VMversion mit nennst.


    Auch ist es schwierig gleichzeitig die Probleme mehrerer Customfields zu benennen, da jedes individuell für sich besprochen werden muss.


    Generell jedoch würde ich Fields, welche ihr für den Kunden angelegt habt, einfach Deaktivieren bzw. keinem Produkt zuordnen, wenn der Kunde diese nicht braucht. Dann sollten sie auch nicht mehr im Warenkorb zu sehen sein.


    Dann kannst Du noch nachsehen, ob Du für ein bestimmtes Field die Warenkorb atribute benötigst oder nicht. Bei einem Mengenfield sollten diese aktiviert sein, damit der Warenkorb die Menge dazurechnen oder abziehen kann.


    Soweit nur kurz am Herrentag. Bin selbst nicht Online um genau nachzusehen.


    Gruß Faro

  • Hallo,
    die Version von Virtuemart ist: 3.0.12, die Joomla-Version ist: 3.8.7.
    Es stehen in einer Produktgruppen immer die gleichen selbsterstellten Textfelder zur freien Eingabe zur Verfügung. Man kann aber nicht vorhersehen, ob der Kunde diese nutzen will, somit müssen sie in der Detailseite erst einmal eingeblendet werden. Erst wenn sie dann leer bleiben sollen sie unterschiedlich verarbeitet werden. Wenn etwas eingetragen wurde, soll Feldtitel und Feldinhalt auch im Warenkorb stehen, wenn nicht, soll auch der Feldtitel nicht im Warenkorb stehen.


    Danke


    Maik

  • Hallo,


    da kann ich dir leider nicht weiterhelfen, weil ich denke, dass man dazu etwas tiefer in die php der einzelnen Felder eingreifen muss.


    Aber hat es einen bestimmten Grund, dass Du VM noch in der Version 3.0.12 nutzt, diese ist aus 2015? Aktuell wäre 3.2.14. Da sich auch in dieser viel geändert hat, behebt es eventuell auch deine Probleme.


    Gruß Faro

  • Servus,


    die Custom Fields werden über das Sublayout customfield.php eingebunden, in diesem Sublayout ist es evtl. möglich, eine Abfrage dafür einzubauen,so dass der Wert nicht weitergegeben wird.
    Für Sublayouts kann man Template-Overrides anlegen.
    Leider hab ich das nicht genauer untersucht, vielleicht führt es in eine entsprechende Richtung.


    Zweiter mir vorschwebender Ansatz wäre die Änderung des Aufrufs in der cart view. Evtl. ist auch hier eine Abfrage möglich, ob ein Wert vohanden ist. Klingt geschrieben jetzt einfacher als der erste Gedanke. ;-)


    Hope it helps
    Stefan

  • Hallo Maik,


    die Lösung deines Problemes findest du in der Datei:
    plugins\vmcustom\textinput\textinput.php


    Ab Zeile 106:


    Folgendermaßen abändern:
    Zeile 106 das isset gegen !empty ersetzen und ein else mit gleichen Parametern ergänzen und statt dem comment einfach ein eigenes Overrides erstellen und ausgeben lassen -> in meinem Fall heißt die Übersetzung des Overrides: nicht gewünscht
    Dann wird im Warenkorb der Name das Selbsterstellten Feldes ausgegeben und dahinter steht dann "nicht gewünscht".
    Diese Daten werden auch durchgehend bis zum Ende (Mails an Kunden, Bestellübersicht usw.) weiter gegeben.



    Ich hoffe ich konnte dir helfen und es funktioniert auch so. :D


    Gruß Pierre