Zum Inhalt springen

page:subtitle mit HTML-Tags ausgeben

Erstellt am 19. Februar 2010 · 7 Antworten · letzte Antwort am 2. März 2010

Tags: Frage

mdhp ·

Über folgenden Code gebe ich den Untertitel einer Seite im Contentbereich der Website aus:

lib.title = TEXT
lib.title.data = page:subtitle
lib.title.insertData = 1

Wie schaffe ich es nun, dass auch die HTML-Umlaute richtig dargestellt werden?
Im Moment wird alles als Text angezeigt.

Beispiel:
Untertitel ist "Hallo <b>Welt</b>!"

Jetzt soll Welt Fett geschrieben ausgegeben werden, es erscheint aber "Hallo <b>Welt</b>!" (man kann die <b> tags sehen).

Cretection ·

Versuchs mal mit:

lib.title = TEXT
lib.title.data = page:subtitle
lib.title.insertData = 1
lib.title.htmlSpecialChars = 0
## ggf. htmlSpecialChars = 1 probieren

Ansonsten mal:

lib.title = TEXT
lib.title.data = page:subtitle
lib.title.insertData = 1 
lib.title.parseFunc >

versuchen.

Cretection ·

Genau da liegt dein Problem ;-)

Bei der aktuellen TemplaVoila Version musst du:

  • 1. Bei deinem Template auf "Update mapping" gehen
    2. Dann auf "Modify DS/TO"
    3. bearbeite nun das "Field" wo die "lib.title" gemappt wird
    4. Dort gehe dann Links auf "Extra"
    5. Deaktiviere "Pass content through htmlSpecialChars (HSC)"
    6. Speichern und testen
    7. Wenn es funktioniert Bedanken und Thread schließen - ansonsten posten ;-)

Bei der alten (ich weiß nicht mehr wie das bei 1.4.1 aussah):

  • 1. Bei deinem Template gehe auf den "Edit"-Stift bei dem "DS"
    2. Dort müsstest du unter "Data Structure XML" folgendes finden (zumindest in dieser Art):

<field_(feldname wo deine lib.title geladen wird) type="array">
				<tx_templavoila type="array">
					<title>Dein Title</title>
					<sample_data type="array">
						<numIndex index="0"></numIndex>
					</sample_data>
					<eType>TypoScriptObject</eType>
					<proc type="array">
						<int>0</int>
						<HSC>1</HSC>
						<stdWrap></stdWrap>
					</proc>
					<preview></preview>
					<TypoScriptObjPath>lib.title</TypoScriptObjPath>
				</tx_templavoila>
			</field_(feldname wo deine lib.title geladen wird)>

Die Zeile:

<proc type="array">
						<int>0</int>
						<HSC>1</HSC>
						<stdWrap></stdWrap>
					</proc>

ersetzt du durch:

<proc type="array">
						<int>0</int>
						<HSC>0</HSC>
						<stdWrap></stdWrap>
					</proc>
  • 3. Speichern und testen
    4. Wenn es funktioniert Bedanken und Thread schließen - ansonsten posten ;-)

mdhp ·

@Cretection
Ja hatte die Lösung in der Zwischenzeit auch gefunden, manchmal sieht man den Wald vor lauter Bäumen nicht... und wollte es gerade hier posten.

hsc auf 0 setzen und gut ist.