Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:yoast_seo

Yoast SEO for TYPO3 (yoast_seo)

Konfiguration

Rendern des Appendix abhängig von DB-Feldern

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.

Seiten

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}
    }
}

News-Datensätze (EXT:news)

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]

yoast_seo und Routing Enhancers

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
typo3/yoast_seo.txt · Zuletzt geändert: 2019/02/17 17:07 von admin