Wer mit titleAppend
eine gleichbleibende Endung (z.B. den Markennamen) an alle Seitentitel anhängt, möchte diese vielleicht bei einigen Seiten individuell anpassen können.
Mit der folgenden Konfiguration wird der Appendix nicht im Titel verwendet, falls im Seo Title-Feld ein angepasster Titel gesetzt wurde.
Wird diese Konfiguration verwendet, muss also bei individuell gesetzten SEO-Titeln der Appendix direkt im SEO-Feld hinzugefügt werden.
Bei normalen Seiten in TYPO3 wird das Feld seo_title
verwendet.
Das folgende TypoScript fragt nicht nur das SEO-Feld ab, sondern setzt auch ein individuelles Trennzeichen zwischen Titel und Appendix.
lib.yoastSEO { pageTitleComplete { 30.value = {$plugin.tx_sklein.websiteName} 30.stdWrap.noTrimWrap = | :: || // Don't render appendix if a custom value in the SEO title field is set: 30.if.isFalse.dataWrap = {field:seo_title} } }
Bei Newsbeiträgen wird ein eigenes Feld für SEO-Titel verwendet, dass den Namen alternative_title
trägt.
Das folgende TypoScript fragt in zwei Schritten erst die News-UID im GET-Parameter ab ({GP:tx_news_pi1|news}
über data.insertData = 1
), danach erfolgt das Auslesen des Datenbankfeldes alternative_title
im aktuellen Datensatz.
Ist dieses Titel-Feld leer, gilt die Bedingung if.isFalse
als erfüllt und der Appendix wird ausgegeben. Wurde aber ein individueller Text in diesem Feld vergeben, entfällt der Anhang des Titels.
[globalVar = GP:tx_news_pi1|news > 0] || [globalVar = GP:tx_news_pi1|news_preview > 0] lib.yoastSEO { // Don't render appendix if a custom value in the alternative_title field is set: pageTitleComplete.30.if.isFalse.cObject = TEXT pageTitleComplete.30.if.isFalse.cObject { data = DB:tx_news_domain_model_news:{GP:tx_news_pi1|news}:alternative_title data.insertData = 1 } } [global]
Sobald unter TYPO3 v9 ein PageTypeSuffix
für sprechende URLs eingerichtet wird, muss dort ein Mapping für die Yoast-Vorschau im Backend hinzugefügt werden. Ansonsten erhält man in der Snippet Preview nur den Wert undefined.
routeEnhancers: PageTypeSuffix: type: CustomPageType default: / index: index map: /: 0 yoast-snippetpreview.json: 1480321830