In TYPO3 9 gibt nach der Installation der Core-Extenson seo in den Seiteneigenschaften Felder, um Meta-Informationen für Facebook und Twitter zu hinterlegen. Diese Informationen werden im Quellcode ausgegeben, wenn man die Felder entsprechend ausgefüllt hat. Nun möchte man nicht explizit immer diese Informationen angeben müssen, vor allem weil der Facebook-/Twitter-Beschreibungstext wahrscheinlich eh identisch ist mit dem Beschreibungstext der Seite. Und die Bilder können automatisch aus dem Feld media
generiert werden, wenn es denn befüllt ist.
Mit dem folgenden TypoScript lassen sich Beschreibung und Seitentitel in die Facebook-/Twitter-Meta-Angaben der Seite schreiben. Sobald die „richtigen“ Felder ausgefüllt werden, dann werden die Angaben daraus ausgegeben.
page.meta { og:title.cObject = TEXT og:title.cObject { field = title } og:description.cObject = TEXT og:description.cObject { field = description # data = levelfield:-1 , description, slide } og:image.cObject = IMG_RESOURCE og:image.cObject.file { import.data = levelmedia:-1, slide treatIdAsReference = 1 import.listNum = 0 maxW = 1200 cropVariant = default } og:image.cObject.stdWrap.dataWrap = {getIndpEnv:TYPO3_REQUEST_HOST}/ }
Damit es mit dem Levelfield Slide funktioniert, müssen die Felder in addRootLineFields aufgenommen werden. Das kann entweder „global“ in der LocalConfiguration.php gemacht werden oder die Extension fügt diese der vorhandenen Liste hinzu.
In meinem Beispiel habe ich weiterehin Crop Varianten für das Media-Feld der Seite definiert und greife auf diese zu. Wenn das nicht gewünscht ist, dann die Zeile mit cropVariants = default
einfach weglassen.