TYPO3 Plugin:

fluid_form

Fluid-Formular

Fluid form ist eine kleine TYPO3-Erweiterung zur Erstellung von Formularen nur mit TypoScript.

TypoScript-Konfiguration

konfiguration {
    # Send by AJAX 0/1/1
    ajax = 1
    # Abfragezeichenfolge zur Ziel-URL hinzufügen
    addQueryString = 0
}

Entfernen oder Hinzufügen von Formularen für den Plugin-Selektor

Sie können Formulare für verschiedene Benutzer/Benutzergruppen bereitstellen, indem Sie einfach Page-TypoScript (tsconfig) verwenden.

Hinweis:

Diese Konfiguration gilt nur für die Formularauswahl im Backend. Ein Formular kann auch mit Setup-TypoScript definiert und verwendet werden!

Konfiguration ab Version 1.2.0

# Verfügbare Formulare
formen {
    # Ein Formular mit internem Schlüssel'contactBasic' und sichtbarem Label'Contact Basic'
    contactBasic = Kontakt basic
    # Löschen des Rückrufformulars
    callBack >
    # Definition eines neuen Formulars
    newForm = Dies ist mein neues Formular
}

Feldoptionen

Kontrollkästchen

Feld / Prüfer standard Typ Beschreibung
htmlSpecialChars: 1 boolesch Wenn 0, wird das Label HTML nicht escaped.
excludeFromMail: 0 boolesch Wenn 1, wird das Feld nicht in E-Mails angezeigt
excludeFromPdf: 0 boolesch Wenn 1, wird das Feld nicht in pdfs angezeigt

Hinweis

Feld / Prüfer standard Typ Beschreibung
htmlSpecialChars: 1 boolesch Wenn 0, wird das Label HTML nicht escaped.
excludeFromMail: 0 boolesch Wenn 1, wird das Feld nicht in E-Mails angezeigt
excludeFromPdf: 0 boolesch Wenn 1, wird das Feld nicht in pdfs angezeigt

Feldvalidierer

  • NotEmpty: Das Feld muss ausgefüllt werden.

    Hinweis:

    Ein Select- oder Radio-Wert ist auch nicht leer, wenn er mit dem Schlüsselwort empty gefüllt ist!

  • MathGuard: MathGuard Captcha muss gelöst werden.
  • E-Mail: Das Feld muss mit einer gültigen E-Mail-Adresse ausgefüllt werden.
  • Leer: Das Feld muss leer sein.

Validator-Übersicht

Feld / Prüfer NotEmpty MathGuard E-Mail Leer
Versteckt: x - - x
Input: x - x x
Textbereich: x - - -
DateTime: x - - -
Kontrollkästchen: x - - -
Auswählen: x - - -
Radio: x - - -
Captcha: x x - -
Hinweis: - - - -
Absenden: - - - -
Hochladen: - - - -

Finisher

Finisher werden in der gleichen Reihenfolge wie sie definiert sind verarbeitet - schauen Sie dazu in den TypoScript-Objekt-Browser.

JavaScript-Events

Grundsätzlich können alle Ereignisse mit TypoScript schnell verwendet werden:

plugin.tx_fluidform.settings.forms.callBack {
    finisher {
        javascript < plugin.tx_fluidform.preset.finisher.javascript
        javascript.functions {
            # Nach erfolgreichem Senden, aber vor dem Anzeigen der Erfolgsmeldung
            beforeSuccess (
                ga('senden','Ereignis','Formulare','Absenden','Kontaktformular');
            )
        }
    }
}

Die folgenden Werte sind verfügbar:

  • initialisieren
  • einreichen
  • beforeSend
  • senden
  • afterSend
  • beforeSuccess
  • erfolg
  • afterSuccess

CSS

CSS über Standardstil

plugin.tx_fluidform._CSS_DEFAULT_STYLE (
    .tx-fluid-form .ajax.sending {
        deckkraft: 0,6;
    }
)

Einbinden von Fluid-Formularen mit TypoScript

Das erste Setup-Typoskript erzeugt den Marker:

# Zuerst das Formular konfigurieren
plugin.tx_fluidform.settings.forms.callBack.configuration.addQueryString = 1
# Bei Verwendung von TYPO3 < 7.6
# includeLibs.tx_extbase_dispatcher = EXT:extbase/class.tx_extbase_dispatcher.php
# Danach schreiben Sie in den Marker
lib.form.callBack = USER_INT
lib.form.callBack {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->ausgeführt
    erweiterungsname = FluidFormular
    pluginKey = Formular
    pluginName = Formular
    vendorName = CodingMs
    steuerung = FluidForm
    aktion = anzeigen
    ansicht < plugin.tx_fluidform.Ansicht
    persistenz < plugin.tx_fluidform.persistence
    einstellungen < plugin.tx_fluidform.settings
    einstellungen {
        # Wählen Sie ein Formular aus den definierten aus!
        form = callBack
        # Einen eindeutigen Identifikator festlegen
        formUid = Fußzeile
    }
}

Verwendung des Markers in Fluid-Vorlagen:

<f:cObject typoscriptObjectPath="lib.form.callBack" />

Verstecktes Feld mit News-Titel oder ähnlichen Daten vorfüllen

Verwenden Sie ein verstecktes Feld im Abschnitt ValueFromTypoScript. Das Wertfeld enthält einen Markernamen, in dem die gewünschte Datenstring wird geschrieben:

felder {
    objekttitel < plugin.tx_fluidform.preset.fields.hidden
    objekttitel {
        label = Immobilie
        section = ValueFromTypoScript Wert
        wert = lib.openimmo.objekttitel
    }
}

Der Marker kann wie gewohnt mit einem TypoScript RECORD-Objekt gefüllt werden:

lib.openimmo.objekttitel = COA
lib.openimmo.objekttitel {
    wrap = Das ist der Titel:|
    10 = AUFZEICHNUNGEN
    10 {
        # id des template-records
        quelle = {GP:tx_openimmo_immobilie|immobilie}}
        source.insertData = 1
        tabellen = tx_openimmo_domain_model_immobilie
        conf.tx_openimmo_domain_model_immobilie >
        conf.tx_openimmo_domain_model_immobilie = TEXT
        conf.tx_openimmo_domain_model_immobilie.field = objekttitel
    }
}

FAQ

Unterschiedliche Empfänger durch Auswahl des Boxwertes

Ein Auswahlfeld mit den Optionen 0/1 entscheidet, wer die Mail erhält. Option 0 sendet die Mail an den Standardempfänger, Option 1 wird durch die folgende Bedingung abgefangen:

globalVar = GP:tx_fluidform_form|Form-Fußzeile-Komplettkunde = 1]
    plugin.tx_fluidform.settings.forms.callBack.finisher.mail.to.0.email = info@test.de
[global]

Aufruf von Google-Analytics Würfen (Index):151 Ungeholter ReferenceError: ga ist nicht definiert

Überprüfen Sie zunächst, ob Ihr AdBlock die Benutzerverfolgung blockiert. Wenn der Fehler weiterhin besteht, überprüfen Sie, ob Ihre Google-Analytics Code-Inclusion auf dem neuesten Stand ist.

Für das Conversion-Tracking müssen Sie möglicherweise eine spezielle Google-Bibliothek hinzufügen:

page.includeJS {
    conversion_async = //www.googleadservices.com/pagead/conversion_async.js
    konvertierung_async.external = 1
}

Der Empfang von E-Mails ist fehlgeschlagen (z.B. durch die Nutzung von Hosteurope als Hoster)

Bitte überprüfen Sie, ob die Absender-E-Mail-Adresse wirklich existiert! Bei der Nutzung von Hosteurope müssen Sie im Provider-Backend eine Standard-E-Mail-Adresse festlegen. Sie werden folgendes finden einstellung in Administration -> Webhosting/Virtual Server Managed -> Skripte -> Standard-E-Mail-Adresse - dazu seite können Sie die E-Mail-Adresse auswählen.

Schließlich müssen Sie diese E-Mail-Adresse in TYPO3 Installtool einstellen:

[MAIL][Transport] = sendmail
[MAIL]  = /usr/sbin/sendmail -t -f mail@domain.com

Anstelle von mail@domain.com musst du die Standard-E-Mail-Adresse verwenden, die du in Hosteuropes ausgewählt hast Anbieter-Backend. Danach sollte der Empfang von E-Mails einwandfrei funktionieren.

Senden der von Enden in einem 404-Fehler

Die AJAX-Anforderung des Formulars ergibt a:

Seite nicht gefunden
Grund: Anfrageparameter konnten nicht validiert werden (&cHash empty)

Lösung: Öffnen Sie das Installtool und deaktivieren Sie die SeiteNotFoundOnCHashError Einstellung: [FE][pageNotFoundOnCHashError] = false

Wie man einen Honeypot integriert

Fügen Sie einfach ein verstecktes Feld ein, das bei Bedarf markiert ist, und fügen Sie den leeren Prüfer hinzu.

felder {
    erforderlich < plugin.tx_fluidform.preset.felder.honeypot
} 

Mögliche Features und Aufgaben

Wenn Sie neue Features beitragen oder sponsern möchten, nehmen Sie bitte Kontakt mit uns auf.

  • TCA-Select migrieren; neue Formularelemente durch addItem füllen (Achtung: Notiz über Änderungen in der Dokumentation schreiben)
  • Erstellen eines neuen Assistenten für Inhaltselemente
  • Erweiterungs-Icon ist eingebrochen, z.B.: additional_reports; Use IconFactory?!!
  • Captcha sollte aktualisiert werden, wenn Sie AJAX-Formularfehler erhalten.
  • AJAX-Formulare: Integrieren Sie einen Fallback, der die Mail bei deaktiviertem JavaScript über einen normalen Page-Reload sendet.
  • Fluid-Vorlage für E-Mail-Nachrichten
  • MathGuard-Parameter müssen in tx_fluidform_form[] gesendet werden

Benötigen Sie schnelle Hilfe mit dieser Extension? Unser Team von erfahrenen TYPO3-Entwicklern löst Probleme unkompliziert und zum Stundensatz.

Verteilung:FLUID_FORM ist auf

0.01 % aller TYPO3 installiert.

  • 0.06 % aller TYPO3 8.7.x Installationen installiert

FLUID_FORM Version:Verteilung nach installierten Versionen

  • 100 % FLUID_FORM v.1.3.0

PHP Version:FLUID_FORM wird benutzt mit

  • 100 % PHP/7.1

Gosign-Responsive Index: TYPO3 Installationen nutzen FLUID_FORM zu

  • 100 % wenn der Gosign-Responsive-Index zwischen 80 % und 100 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 60 % und 80 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 40 % und 60 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 20 % und 40 % ist
  • 0 % wenn der Gosign-Responsive-Index zwischen 0 % und 20 % ist

Pagespeed: TYPO3 Installationen nutzen FLUID_FORM zu

  • 0 % wenn der Pagespeed zwischen 80 % und 100 % ist
  • 0 % wenn der Pagespeed zwischen 60 % und 80 % ist
  • 0 % wenn der Pagespeed zwischen 40 % und 60 % ist
  • 0 % wenn der Pagespeed zwischen 20 % und 40 % ist
  • 100 % wenn der Pagespeed zwischen 0 % und 20 % ist


Stichprobe n=36801 von Gosign gecrawlte TYPO3-Seiten mit den Top-Level-Domains <.de/.ch/.at>