TYPO3: META-Angaben automtisch für Plugins mit Listen- und SingleView
Es geht um folgendes:
Wenn man eine TYPO3 Extension hat, die eine Listenansicht und eine Single-Ansicht hat, dann kann man zwar für die Seite, auf der das Plugin liegt, Seitentitel und Meta-Daten vergeben, aber diese sind dann bei allen Unterseite gleich. Das mögen Suchmaschinen gar nicht.
Die Lösung für dieses Problem sieht wie folgt aus:
Auf der Seite, auf der das Plugin (in diesem Beispiel die Linkliste “ab_linklist”) liegt, packt man folgendes TypoScript:
# Condition, zieht nur an, wenn
# tx_ablinklist_pi1[category_uid] als
# Parameter in der URL steht (Wert egal, deswegen "> 0"
[globalVar = GP:tx_ablinklist_pi1|category_uid > 0]
lib.linkTitel=COA
lib.linkTitel {
# Wir wollen etwas auslesen und weiterverarbeiten,
# deswegen Klasse "Records"
10=RECORDS
10 {
# Wie lautet der Parameter, der benutzt werden soll?
# => "tx_ablinklist_pi1[category_uid]"
source = {GPvar:tx_ablinklist_pi1|category_uid}
source.insertData = 1
# Die Tabelle, aus der der Wert gelesen werden soll
tables = tx_ablinklist_category
conf.tx_ablinklist_category >
conf.tx_ablinklist_category = TEXT
# Das Feld in der Tabelle, aus das der Wert gelesen
# werden soll
conf.tx_ablinklist_category.field=label
}
}
=> Wir haben den “label” der Kategorie ausgelesen, die der Besucher gerade ansieht. Diesen können wir weiterverarbeiten (s.u.)
# so ähnlich wie oben, aber andere Condition...
[globalVar = GP:tx_ablinklist_pi1|uid > 0]
lib.linkTitel=COA
lib.linkTitel {
10=RECORDS
10 {
# id des template-records
source = {GPvar:tx_ablinklist_pi1|uid}
source.insertData = 1
tables = tx_ablinklist_link
conf.tx_ablinklist_link >
conf.tx_ablinklist_link = TEXT
conf.tx_ablinklist_link.field=label
}
}
Dann das Ganze auf der Seite einbauen:
page.headerData.17 >
# z.B. benutzen wir den oben gelesenen Wert,
# um damit "meta-description" zu setzen...
page.headerData.17 < lib.linkTitel
page.headerData.17.wrap = <meta name="description" content=" | " />
# Seitetitel
page.headerData.20 >
page.headerData.20 = COA
# ... oder den Seitentitel...
page.headerData.20.30 < lib.linkTitel
page.headerData.20.30.wrap = |-
page.headerData.20.40 = TEXT
page.headerData.20.40.data = levelfield : 1, subtitle // title
#page.headerData.20.40.wrap = |-
page.headerData.20.40.required = 1
page.headerData.20.wrap = <title> | </title>
Nett, oder? :-)
Popularity: 2%
Werbung
2009-07-12 - 3.23 pm
Hallo, Deine Tipps sind übrigens gut erklärt :-), nur würde ich gern wissen, wie man das “Bitte weiterlesen” zum Beispiel bei der Pageteaser Extension mit einem automatischem Title-Tag versieht – also: “bitte weiterlesen” zur Ansicht… usw. so dass man dann den subtitle ausgeben kann. Hättest Du da evtl ne Idee? Wäre super! Danke im Voraus, Susem