Kontaktformular an Node anhängen?
am 05.11.2016 - 11:53 Uhr in
Hallo zusammen,
verschiedene Betriebe werden auf jeweils einem Node vorgestellt. Was ich nun brauche, ist eine Möglichkeit, am Ende der angezeigten Seite ein Kontaktformular einzubinden, welches noch einige Auswahlfelder (Datepicker, Selectionlists, Textarea) enthalten soll. Beim Absenden soll der jeweilige Betrieb eine Mail mit den entsprechenden Angaben aus den Feldern erhalten.
Ich dachte anfangs, das sei eine ganz triviale Aufgabe aber ich schaffe es einfach nicht. Ich habe webforms und entityforms versucht. Hier sind die Formulare aber jeweils selbst ein Node und das dynamische Verknüpfen bekomme ich einfach nicht hin obwohl das Anzeigen eines Formulars mit Panels oder als Block klappen würde. Dann bin ich über views contact form gestolpert, was theoretisch auch funktionieren sollte. Allerdings müsste ich mich dann mit hook_form_alter beschäftigen um ein Formular zu gestalten. Und leider bin ich ein No-Coder, was die Sache nicht einfacher macht. Zudem bekomme ich diese weitestgehend undokumentierte Modul einfach nicht zum Laufen.
Hat jemand einen Tipp für mich?
Falls ich das dann irgendwann mal umgesetzt haben sollte, wird es noch mal eine Ecke komplizierter: Ich habe eine View, welche die Betriebe in Listenform ausgibt. Was ich nun gerne hätte, wäre eine Favoritenfunktion, so dass man in dieser Liste einfach jeden BEtrieb markieren und somit bookmarken kann. Dann soll man sich diese Bookmarks anzeigen lassen können und aus dieser Liste mithilfe des gleichen Formulares die Mail an alle Betriebe senden können.
Ideal wäre es, wenn die ganzen verschickten Nachrichten noch abrufbar wären, was mit webforms ja sicherlich gehen würde.
Ich wäre sehr dankbar für hilfreiche Hinweise, wie ich das bewerkstelligen könnte.
Beste Grüße
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi,ich würde da Betriebe
am 05.11.2016 - 13:30 Uhr
Hi,
ich würde da Betriebe eher Benutzern zuordnen anstatt Nodes.
So hätte jeder Betrieb schon ein automatisch ein solches Kontakforumlar!
Ein Kontaktformular braucht eigentlich nicht mehr als ein Textfeld und eine Email Adresse,
solche Felder kannst Du ziemlich überall anhängen!
MfG
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
entityforms + entityreference +rules
am 05.11.2016 - 20:23 Uhr
Etwas ähnliches habe ich mal für Veranstaltungen realisiert. An jede Veranstaltung wird automatisch das Registrierungsformular (entityform) gehängt, das geht über ein entityreference Feld. Mit rules kann ich die Feld-Werte des referenzierenden Nodes auslesen und somit beim Absenden des Anmelde-Formulars durch den Besucher eine automatische E-Mail-Benachrichtigung an den jeweiligen Veranstalter schicken.
Hi, danke für die Antwort!
am 05.11.2016 - 23:51 Uhr
Hi,
danke für die Antwort!
guter Gedanke! Hinter jedem Betrieb verbirgt sich jedoch ein recht umfangreicher Content Type, der sich auf Benutzerebene nicht so darstellen lassen würde. Denke ich zumindest :)
vg
Andi
Hi, auch Dir danke für die
am 05.11.2016 - 23:59 Uhr
Hi,
auch Dir danke für die Antwort!
Genau bei dem Punkt habe ich ewig herum geeiert. Mein Problem ist, dass mir der Bezug fehlt, was sicherlich nur ein Verständisproblem ist.
- Ich erstelle mit entityforms einen entityform type
- Eingebunden habe ein ein entityreference Feld zur Verbindung zum Content Type
- Nun ging schon los, diesen an die Nodes anzuhängen. Hierzu habe ich dann entityforms_block verwendet, was auch recht schnell geklappt hat.
Beim Anzeigen eines Nodes sehe ich nun ein Formular, auf dem ich den Betrieb in einer select Box auswählen kann. Ich bin also an der Übergabe vom Node gescheitert. Was habe ich nicht alles versucht, um das hinzubekommen. Aber irgendwann habe ich dann aufgegeben.
Wenn Du mir hier den entscheidenden Hinweis gibst wärst Du mein Held des Tages. Oder eher des Monats :-)
vg
Andi
Hi ich weiss nicht wann Du
am 06.11.2016 - 00:09 Uhr
Hi
ich weiss nicht wann Du welche Aktion ausführen möchtest aber
mit Rules kannst Du z.B: beim speichern eines Nodes eine Email senden.
Gruss
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Entityreference im referenzierenden Content type anlegen
am 06.11.2016 - 09:52 Uhr
Das Problem ist wahrscheinlich der Block. Den brauchst Du aber gar nicht. Das entityreference Feld muss in dem Content type des referenzierenden Nodes angelegt sein. Das Rendern der Entityform kann dann direkt erfolgen (Manage display -> Rendered entity).
Ich habe mittlerweile
am 08.11.2016 - 14:26 Uhr
Ich habe mittlerweile aufgegeben. und glaube, dass webforms und entityform nicht die richtigen Module dafür sind. Trotzdem danke für eure Mühe! Sollte es irgendjemand tatsächlich schaffen, das mit einem der beiden Module umzusetzen und wäre ich für ein kleines reproduzierbares Tutorial dankbar. Schon frustierend, einfach aufzugeben. Aber ich habe da jetzt schon mehr zeit rein investiert als für die gesamte restliche Webseite. Und irgendwann reichts :) Ich baue mir nun ein eigenes Formular mit hook_form_alter und den Modulen email_field und views contact form. Als No-Coder auch eine Herausforderung aber da gehts schneller voran :-P
Danke euch!
vg
Andi