ask-a-question

  • Problembeschreibung

    Virtuemart bietet in der Produkt-Detail-Seite einen Button mit einem Link zu einem Formular, über welches der Seitennutzer eine Frage zum Produkt stellen kann. Vielen Shopbetreibern ist dieses Formular mit seinen angebotenen Feldern zu dürftig. Es fehlen ggf. wichtige Felder um mit dem Kunden in Kontakt treten zu können. Nur die E-Mail-Adresse ist einfach zu wenig. Deshalb trat ein Kunde mit der Bitte an mich heran, diese Formular um die Felder Straße-und-Hausnummer, PLZ-Ort, Telefon und Betreff zu erweitern. Zunächst hatte ich befürchtet, dass man dazu Core-Scripte modifizieren müsste. Jedoch stellte sich heraus, dass die Lösung zum einen recht einfach ist, und zum anderen keine Core-Scripte betreffen muss. Alles gelingt durch Erzeugen von Template-Override-Scripten im einen Joomla-Template. Diese Beitrag beschreibt den Weg zur Lösung.

     

    Lösung in drei Schritten

    Natürlich wäre es vom sauberen Stil her notwendig, speziell das Abholen der gesendeten Formularinhalte über das Control-Script components/com_virtuemart/views/askquestion/view.html.php zu realisieren. Dort gehört die Request-Abfrage der Feldinhalte und das Bereitstellen der Inhalte für die Mail-Sende-Aktion eigentlich hin. Nur, das ist eben ein Core-Script und nicht über das Overriding eingebunden. Deshalb sollte man eine Modifikation dort vermeiden. Betroffen sind sind schließlich drei PHP-Template-Scripte und und eine paar CSS-Styles, die man in die custom.css einfügen kann.