inx_team_contact_form_fields (Filter)
Mit diesem Filter können die Felder des einheitlichen Kontaktformulars angepasst oder um eigene Elemente erweitert werden.
Parameter
Name (Typ) | Beschreibung |
---|---|
$fields (array) |
Array mit vollständigen Felddaten oder nur den Namen (Keys) |
$names_only (bool) |
true, wenn – kontextabhängig – nur die Feldnamen (Keys) zurückgeliefert werden sollen, ansonsten false (Standardvorgabe) |
$scope * (string) |
für die Ausgabe vorgesehener Feldumfang: basic (Standardvorgabe: einfaches Formular) oder extended (erweitertes Formular) |
* Der Umfang des Formulars kann – je nach Art der Einbindung – per Plugin-Option, Widget-Einstellung (Kontaktformular-Umfang) oder Shortcode-Attribut (contact_form_scope
) festgelegt werden.
Fields-Array im Detail
Die folgenden Optionen können pro Feld definiert werden:
Name (Typ) | Beschreibung / mögliche Werte |
---|---|
type (string) |
Typ des Formularelements |
text: normales Textfeld | |
email: Textfeld für die Eingabe einer E-Mail-Adresse (mit entsprechender Validierung) | |
textarea: mehrzeiliges Textfeld – siehe default_value |
|
checkbox: einzelne Checkbox – siehe value |
|
radio: Radio-Auswahlelemente (Gruppe) – siehe options |
|
select: Dropdown-Auswahlbox – siehe options |
|
required (bool) |
true bei Pflichtfeldern, ansonsten false |
required_or (string) |
alternative Pflichtangabe (entweder das aktuelle oder das Feld mit dem angegebenen Namen/Key muss ausgefüllt sein – siehe Beispiel email/phone) |
caption (string) |
Feldbezeichnung im Frontend |
caption_mail (string) |
alternative Feldbezeichnung in Mails, sofern abweichend |
placeholder (string) |
Platzhaltertext |
value (string) |
zu übermittelnder Wert eines aktivierten checkbox-Elements (optional, Standard: X) |
default_value (string) |
Standardinhalt eines textarea-Elements (optional) |
options (array) |
Key-Value-Array der Auswahloptionen für die Feldtypen radio und select |
layout_type (string) |
optionale Mindestbeite des Elements |
half: mindestens 50 % des Rahmenelements | |
full: komplette Breite des Rahmenelements | |
scope (array) |
Liste von Scopes, in denen das Element enthalten ist (enthält im Regelfall basic, extended oder beide Angaben) |
order (int) |
Sortierindex für die Reihenfolge der Ausgabe |
Standardkonfiguration
vollständige Daten ($names_only === false
– siehe Parameter)
1 | $fields = [ |
nur Feldnamen ($names_only === true
– siehe Parameter)
1 | $fields = [ |
Rückgabewert
angepasstes bzw. erweitertes Felddaten-Array, wobei das Format abhängig vom Parameter $names_only
ist
Rahmenfunktion
Eine Funktion zur Nutzung des Filters wird typischerweise in der folgenden Form in der Datei functions.php des Child-Themes oder per Code-Snippets-Plugin eingebunden.
1 | add_filter( 'inx_team_contact_form_fields', 'mysite_extend_contact_form_fields', 10, 3 ); |