Formular mit Länderauswahl

Ein Formular mit Auswahl des Landes und Übergabe des Ländernamens in der jeweilgen Sprache können Sie mit Bordmitteln umsetzen.

Soll von Seitenbesuchern bei einer Kontaktanfrage  auch das Land erfragt werden, in dem diese wohnhaft sind, bietet Ihnen Weblication® CMS schon standardmässig eine Lösung hierfür. Das nachfolgende Beispiel geht von der aktuellen CMS-Version und aktueller BASE bzw. dem aktuellen Weblic® "Kontaktformular / Formular-Editor" aus.

Fügen Sie in Ihr Formular über den Formulareditor das Element "Auswahlfeld (select, dropdown)" ein.

Formular mit Länderauswahl im Editor-Modus
Formular mit Länderauswahl im Editor-Modus

Den Feldnamen passen Sie wegen eindeutiger Benennung z.B. auf "country" an.

Sie können nun entweder die Auswahlmöglichkeiten im gleichnamigen Feld direkt angeben oder - wie hier beschrieben - über die auswählbaren Kategorien die Kategoriendatei der Länder "countries.wCategories.php" aus dem globalen Projekt auswählen. Sofern bei Aufruf des Formulares schon ein Wert vorausgewählt sein soll, tragen Sie den Wert aus dem text-Attribut der Kategoriendatei in das Feld "vorausgewählter Wert" ein. Die Sortierung wählen Sie wie gewünscht.

Quelltext der Ländern Kategoriendatei zum Land Deutschland
Quelltext der Ländern Kategoriendatei zum Land Deutschland

Sie verfügen nun über ein Kontaktformular mit einer Auswahlbox für das Land des Seitenbesuchers.

Formular mit Auswahl des Landes
Formular mit Auswahl des Landes

Optional Wert der Länderkategorie in der E-Mail beeinflussen

Das Land wird Ihnen in der generierten E-Mail standardmässig aus dem Wert des text-Attributes ausgelesen (im Beispiel für Deutschland also "DE").

Wollen Sie anstatt des Länderkürzels aber die Sprachkennzeichnung des jeweiligen Sprachprojektes setzen, können Sie dies über die erweiterten Formulareinstellungen in der Box "Nach dem Absenden auszuführendes Script" beeinflussen.

Zur Kategoriendatei lesen Sie die Sprachkennzeichnung (z.B. title_de Attribut des category-Knotens zum entsprechenden Land) über das PHP-Framework aus:

... <!-- Auszug aus der Box "Nach dem Absenden auszuführendes Script" -->
$fileGetDataCategory = "/[IHR-LAYOUT-PROJEKT]/wGlobal/content/categories/countries.wCategories.php";
$mailData["country"] = wDocumentData::getData($fileGetDataCategory, "/categories/category[@text='".$mailData["country"]."']/@title_de");
...
wMailer::sendMailStr($this->getVar("mailStr"), $mailData, null, $attach);
...