Beiträge der Kategorie TYPO3

Mailform ID bei zwei Formularen auf der Seite

Bei einstellen von zwei Formularen (normales Mailform in TYPO3) ist mir aufgefallen, dass die Überprüfung der Felder nicht stattfindet. Das Formular wird einfach gesendet, egal wie die Felder ausgefüllt worden sind. Die Erklärung dafür war einfach: beide Formulare haben die gleiche ID (nämlich mailform), die an die Überprüfungsfunktion übergeben wird. Die Überprüfungsfunktion beschwert sich nicht, sondern wird einfach nicht ausgefüllt.
(mehr …)

Geschrieben in TYPO3 | Kommentare deaktiviert für Mailform ID bei zwei Formularen auf der Seite

Single Tree Sprachsetup in TemplaVoila

Das ist kein Tutorial – es gibt einige gute Anleitungen zu dem Thema!

Erstmal die Links, die mir geholfen haben

Konzepte

Inhalte werden übersetzt (Inherit): die Anzahl der Texte, das Layout etc. ist identisch, zwischen Übersetzung und Originaltext besteht eine Verbindung.

Inhalte werden lokalisiert (Separate): die Anzahl der Texte, das Layout etc. kann abweichen, kein Zusammenhand zwischen Übersetzung und Originaltext.

Einstellungen

Beim Anlegen von Data Structures für TemplaVoila gibt es am Anfang der Datei zwei Angaben, die das Verhalten bestimmen: langChildren und langDisable.

Language Mode: Separate

Wozu:
– Inhalte können nicht direkt übersetzt werden
– auf unterschiedlichen Versionen der Seite müssen neue Inhalte angelegt werden

Auswirkungen:
– Inhalte werden nur von der übersetzten Version der Seite gezogen
– keine Verknüpfung zwischen Originaldatensatz und Übersetzung

Erreicht durch:
0
0

Language Mode: Inherit

Empfehlung: für Content-Elemente und Content-FCEs

Wozu:
– Inhalte können direkt übersetzt werden

Auswirkungen:
– jedes Element kann übersetzt werden
– direkte Verknüpfung zwischen Übersetzung und Original

Erreicht durch:
1
0

In bestimmten Fällen führt diese Einstellung im TV-Modul zur Fehlermeldung: No content field, recommended to set „“ = 1

Language Mode: Disabled

Empfehlung: für Container (zwei Spalten)

Auswirkungen:
– der Sprachumschalter oben in der Seite im BE hat keine Auswirkungen auf das Formular
– Unter jedem Inhalt wird eine Übersetzungsmöglichkeit angezeigt

Erreicht durch:
0|1
1

Geschrieben in TYPO3 | Kommentare deaktiviert für Single Tree Sprachsetup in TemplaVoila

Sortierungsfehler im tt_address-Plugin

tt_address bringt ein Plugin mit, das zur Darstellung der Adressen im Frontend verwendet werden kann. Nach dem Einfüges des Plugins auf der Seite kann man entweder einzelne Adressen auswählen oder eine Adressgruppe, darunter kann man eine Sortierung wählen und einen Speicherordner. Dabei wird die Reihenfolge der Adressen in der Einzelauswahl bei der Darstellung im Frontend komplett ignoriert, selbst wenn man keine Sortierung wählt.
Um dieses Problem zu lösen habe ich tt_address per XClass erweitert (meine Anleitung für XClass), dann muss man mindestens zwei Funktionen erweitert: die Funktion, die die einzelnen Datensätze holt und die Hauptfunktion, um da die nachträgliche Sortierung auszuschalten.

Die Funktion für die Datensätze muss soweit angepasst werden, dass die die Uids abgearbeitet werden – anstatt uid IN (…) eine foreach-Schleife mit uid = X. Die darauf kommende foreach-Schleife wird dadurch überflüssig, den Code daraus kann man in die neue übernehmen.

In der main-Funktion muss die Sortierung ausgeschaltet werden, wenn keine angegeben ist. Die Sortierung wird bereits in der init-Funktion gesetzt, daher muss man an der Stelle die Konfiguration erneut auslesen. Wenn keine Sortierung gewählt ist, ist der Wert in den Flexforms ‚default‘. So kann man in einer if-Abfrage die Sortierung für ‚default‘ weglassen.

Class=“bodytext“ entfernen

Normalerweise generiert TYPO3 bei Texten aus dem RTE class=“bodytext“ in jeden Absatz rein, damit das Styling besser angepasst werden kann. Damit kann man entfernen:

lib.parseFunc_RTE.nonTypoTagStdWrap.encapsLines.addAttributes.P.class =

Geschrieben in TYPO3 | Kommentare deaktiviert für Class=“bodytext“ entfernen

Menü nur dann anzeigen, wenn Seiten vorhanden

Dieser TypoScript-Schnipsel kann verwendet werden, um ein Menü der Seiten auf Level 3 darzustellen, es kann entweder fest auf jeder Seite eingefügt werden oder auf bestimmten Seite als Object (Extension tscobj). Es wird nur dann was ausgegeben, wenn es Seiten auf Ebene 3 gibt, andernfalls wird nicht mal die Überschrift angezeigt. Die Lösung habe ich im TYPO3-Forum (typo3.net) gefunden.

sub = COA
sub {
10 = TEXT
10.value = {page:title}
10.insertData = 1
10.wrap =

|

20 = HMENU
20 {
entryLevel = 2
1 = TMENU
1.wrap =

    |

1.NO.allWrap =

  • |
  • 1.NO.stdWrap.htmlSpecialChars = 1
    }
    if.isTrue {
    numRows {
    table = pages
    select.pidInList.data = TSFE:id
    }
    }
    }

    Geschrieben in TYPO3 | Kommentare deaktiviert für Menü nur dann anzeigen, wenn Seiten vorhanden

    Frontend-Ausgabe in tt_address

    Hier ein kleiner Schnipsel wie man in tt_address die Konfiguration setzen kann, so dass z.B. die E-Mail-Adresse verlinkt ist, selbst aber nicht zu sehen ist und weitere Felder nur dann angezeigt werden, wenn es sie tatsächlich gibt. Dazu braucht man eine HTML-Datei, die als Vorlage dient und darin kann man dann alle Marker unterbringen. Diese Datei wählt man im Plugin zur Anzeige aus.
    (mehr …)

    Geschrieben in TYPO3 | Kommentare deaktiviert für Frontend-Ausgabe in tt_address

    Browser-Weichen in TypoScript

    Jedem Tierchen sein Pläsierchen 🙂

    Mit Conditions kann man in TypoScript für jeden Browser ein separates Stylesheet nachladen. Diese Methode ist eigentlich besser, als Hacks zu benutzen, zum einen weil nicht alle Hacks validieren und zum anderen, weil es nicht für jeden Browser Hacks gibt – z.B. Opera oder Safari sind problematisch. Weiterhin kann man so Kombinationen abfangen und unterscheiden zwischen Safari auf Mac oder Safari auf Windows.
    (mehr …)

    Geschrieben in TYPO3 | Kommentare deaktiviert für Browser-Weichen in TypoScript

    Pagebrowser in tt_news anpassen

    In tt_news gibt es zwei Page Browser zur Auswahl – den normalen, der leider noch Tabellen verwendet und den pi-Page Browser, der ohne weitere Anpassungen ganz komische Ergebnisslisten ausgibt. Hier ist eine Konfiguration, wie man der Page Browser nur mit Typo Script so verändern kann, dass er wie der in indexed search ist – mit Listen, Zeile darüber ist separat etc.
    Das ist der Output (formatiert von mir):

    Anzeige der Ergebnisse 1 bis 5 von insgesamt 8


    Das ist die Konfiguration:

    plugin.tt_news.pageBrowser {
    showFirstLast = 0
    showRange = 0
    browseBoxWrap =

    |

    showResultsWrap = |

      LinksWrap = |
      browseLinksWrap = |
      activeLinkWrap =

    • |
    • disabledLinkWrap =

    • |
    • inactiveLinkWrap =

    • |
    • }