Kontaktformular E-Mail Felder ausblenden

  • Ich möchte gerne ein eigenes Formular bauen. Die Standard Kontaktfelder benötige ich nicht. Ist es richtig, dass das out-of-the Box nicht geht? Felder zum Kontaktformular hinzufügen kann ich. Aber bekomme dann die Felder des Kontaktformulars nicht weg. Welche Erweiterung würde sich hierzu anbieten? Bin für jeden Tipp dankbar.

  • Die Standard Kontaktfelder benötige ich nicht. Ist es richtig, dass das out-of-the Box nicht geht? Felder zum Kontaktformular hinzufügen kann ich. Aber bekomme dann die Felder des Kontaktformulars nicht weg. Welche Erweiterung würde sich hierzu anbieten? Bin für jeden Tipp dankbar.

    Also out-of-the Box ginge das mit einem Template override.


    Override Infos: https://www.j-over.de/de/faq/was-sind-template-overrides

    wäre ev. dieses da: https://github.com/joomla/joom…act/tmpl/default.php#L111


    Liebe Grüße

    Christine

  • Also out-of-the Box ginge das mit einem Template override.

    Insofern nicht, da eine doppelte Prüfung stattfindet, ob Pflichtfelder gefüllt sind. Ein Override reicht nur dann, wenn man in die versteckten Pflichtfelder irgendwas einfügt + kleinem Rattenschwanz.


    Man braucht ein Plugin, dass sowohl bei der Anzeige, als auch beim Absenden nix anmeckert und dafür die Felder versteckt als auch das "required" entfernt. Nicht dolle schwer, aber halt Aufsetzen eines eigenen Plugins nötig...

  • Hallo,

    Insofern nicht, da eine doppelte Prüfung stattfindet, ob Pflichtfelder gefüllt sind. Ein Override reicht nur dann, wenn man in die versteckten Pflichtfelder irgendwas einfügt + kleinem Rattenschwanz.

    Aha ja :) Sprichst ev. das da an (betreffend der Pflichtfelder Prüfung)?

    https://github.com/joomla/joom…els/forms/contact.xml#L23


    Man braucht ein Plugin, dass sowohl bei der Anzeige, als auch beim Absenden nix anmeckert und dafür die Felder versteckt als auch das "required" entfernt. Nicht dolle schwer, aber halt Aufsetzen eines eigenen Plugins nötig...

    Jo :huh:


    Liebe Grüße

    Christine

  • Bisschen OffTopic (glaub ich):

    Sprichst ev. das da an (betreffend der Pflichtfelder Prüfung)?

    Ja genau und da speziell die Zeile https://github.com/joomla/joom…els/forms/contact.xml#L32

    In einem Layout-Override kann man zwar das "required" entfernen und das Feld verstecken, so, dass das JavaScript bzw. Browser das Absenden nicht mehr blockiert, aber dann rödelt die Seite etwas und dann kommt vom PHP die Meldung: "Pflichfeld fehlt/leer", weil eben das "required" im XML steht.


    Man kann nun in einem Plugin entweder das XML sauber manipulieren oder mit purem PHP sauber aushebelen. Mit Override kombinieren oder nicht...


    Leider ist meine Plugin-Anleitung dazu so extrem veraltet, dass ich sie nicht verlinke ;) Explodiert mit Joomla 4.


    Man muss die Anfordernisse an's Formular näher kennen, um zu entscheiden, ob man auf ein Plugin verzichten kann oder nicht.


    Dieses Formular besteht nur aus eigenen Feldern, weil man sie dann leichter im Backend sortieren kann und eigene Felder für mehrere Formulare verwenden kann. Die Joomla-Felder sind versteckt, werden aber im Hintergrund "heimlich" gefüllt. Bspw. wird mit Vorname und Nachname das versteckte Joomla-Feld "Name" gefüllt, damit Joomla dann nicht meckert. Das ging dann nur mit Override und bisschen JavaScript und man konnte auf ein Plugin verzichten.

    Das versteckte Pflicht-Betreff wird im Override mit einem Standard-String belegt, damit Empfänger weiß, welches Formular es war. Das sind diese viel zitierten Override-Zeilen.

    Code
    $this->form->setFieldAttribute('contact_subject', 'default', Text::_('FORM_SAMPLE_REQUEST'));
    $this->form->setFieldAttribute('contact_subject', 'type', 'hidden');


    Und mein eigenes Kontaktformular verwendet ein Plugin um den Namen optional zu haben und nicht Pflicht. Da reichte ein Override nicht.


    Außerdem hab ich durch das Plugin den Luxus mich umzuentscheiden:



    Will nur sagen: Geht schon auch mit Joomla-Hausmitteln, wenn man weiß, was wie rauskommen soll... Und bei meiner ersten größeren Umstellung auf Joomla 4 (was Kunde trotzdem will, kriegt Kunde) sehe ich, wie gut es ist, Hausmittel verwendet zu haben ;) Auch, wenn ich trotzdem immer wieder ko*** muss wegen der "Nerds" ;)