Tag: TypoScript

CoSchni#5: Seiteninhalt ohne Head ausgeben für Ajax Requests

Angenommen man hat eine Seite mit dynamischem Inhaltsbereich, der zum Zeitpunkt, wenn die Seite geladen wird, noch nicht feststeht, bzw. man diesen aus Performance-Gründen nicht gleich mitladen will. Der Inhalt soll erst beim Klicken auf “Weiter” oder scrollen dynamisch in den bereits angezeigten Inhalt geladen werden. Der nachgeladene Inhalt, bzw. das HTML braucht somit bspw. keine head-Angabe, weil die bereits vorhanden ist. Um dies zu erreichen, muss ein neuer Seitentyp definiert werden, bei dem alle weiteren “Ausgaben” unterdrückt werden:

[PHP]
dynCall = PAGE
dynCall {
typeNum = 999
10 < dyn.Content config { disableAllHeaderCode = 1 xhtml_cleaning = 0 admPanel = 0 debug = 0 no_cache = 1 } } [/PHP] Aufrufen kann man später den Inhalt wie folgt: [PHP] http://www.example.com/index.php?id=123&type=999 [/PHP]

CoSchni#4: SourceOptimization (sourceopt)

Die TYPO3 CMS Extension SourceOptimization soll dafür sorgen, das der gesamte HTML minified augegeben wird. Auf Wunsch werden alle HTML-Leerzeichen und Kommentare entfernt, außer der TYPO3 CMS Hinweis im Header. Damit die Extension sourceopt den HTML-Code minifiziert, ist folgende Zeile in den Constants notwendig:

[PHP]
// TYPOScript Constants
sourceopt.formatHtml = 1
[/PHP]

Ist nur ein Zeile und sieht auch logisch aus, da es ansonsten aber keinen Hinweis gibt, habe ich etwas gebraucht bis ich dies gefunden hatte.

[random_content group_id=”211″ num_posts=”1″]

TYPO3 Merksatz #9: COA_INT Inhalte sind nicht im Cache

Analog zu USER_INT, werden COA_INT Inhalte auch nicht im Cache abgelegt. Somit läßt sich eine Regel ableiten: “Objekte deren Typ auf “_INT” endet, werden nicht im Cache abgelegt.” so einfach ist das.

Falls es noch andere Objekte gibt, die nicht im Cache abgelegt werden, oder Anregungen für weitere Merksätze würde ich mich über einen Kommentar freuen.

[random_content group_id=”211″ num_posts=”1″]

TYPO3 Merksatz #4: USER_INT Inhalte sind nicht im Cache

Im Gegensatz zu USER werden USER_INT Inhalte nicht gecached.

[PHP]
/* Wird im Cache von Typo3 abgelegt */
page = PAGE
page.typeNum=0
includeLibs.phpdatei = media/scripts/example.php

page.30 = USER
page.30 {
userFunc = user_various->listMembers
reverseOrder = 1
}
[/PHP]

[PHP]
/* Wird bei jedem Aufruf neu geladen */
page = PAGE
page.typeNum=0
includeLibs.phpdatei = media/scripts/example.php

page.30 = USER_INT
page.30 {
userFunc = user_various->listMembers
reverseOrder = 1
}
[/PHP]

[random_content group_id=”211″ num_posts=”1″]