### PAGE TITLE ###
config.noPageTitle = 2
page.headerData.10 = COA
page.headerData.10 {
    wrap = <title>|</title>

    10 = COA
    10 {
        #title
        10 = TEXT
        10.field = seo_title

        # if seo_title is set overrides complete title (no pre-/suffix used)
        # else add pre-/suffix
        10.stdWrap.ifEmpty.cObject = COA
        10.stdWrap.ifEmpty.cObject {

            #prefix
            10 = TEXT
            10.value =

            #prefix delimiter
            15 = TEXT
            15.value =

            20 = TEXT
            20.field = nav_title // title

            #suffix delimiter
            30 = TEXT
            30.value = |
            30.noTrimWrap = | | |

            #sufix: use websiteTitle from site-config (fallback: sitename)
            35 = TEXT
            35.data = site:websiteTitle
            35.ifEmpty.data = GLOBAL:TYPO3_CONF_VARS|SYS|sitename

        }
    }

}

#Override Title for News Detail
#ToDo: change [page["uid"] to news Detail uid
[page["uid"] == 9999]
      temp.newsTitle = RECORDS
      temp.newsTitle {
        source = {GP:tx_news_pi1|news}
        source.insertData = 1
        tables = tx_news_domain_model_news
        conf.tx_news_domain_model_news >
        conf.tx_news_domain_model_news = TEXT
        conf.tx_news_domain_model_news.field = alternative_title // title
      }

      page.headerData.10.10.10.stdWrap.ifEmpty.cObject.20 >
      page.headerData.10.10.10.stdWrap.ifEmpty.cObject.20 = COA
      page.headerData.10.10.10.stdWrap.ifEmpty.cObject.20 < temp.newsTitle

      #remove pre-/suffix from news Detail if needed
      #page.headerData.10.10.10.stdWrap.ifEmpty.cObject.10 =
      #page.headerData.10.10.10.stdWrap.ifEmpty.cObject.15 =
      #page.headerData.10.10.10.stdWrap.ifEmpty.cObject.30 =
      #page.headerData.10.10.10.stdWrap.ifEmpty.cObject.35 =
[END]


### META DATA ###
# Fallback to parent page if no meta data is given
page.meta {

    #PAGE
    description {
        data = page:description
        ifEmpty.data = levelfield :-1, description, slide
    }
    keywords {
        data = page:keywords
        ifEmpty.data = levelfield :-1, keywords, slide
    }

    #FACEBOOK
    og:title {
        data = page:og:title
        ifEmpty.data = levelfield :-1, title, slide
    }
    og:description {
        data = page:og:description
        ifEmpty.data = levelfield :-1, description, slide
    }
    og:image.stdWrap.typolink {
        parameter.stdWrap {
            cObject = IMG_RESOURCE
            cObject.file {
                treatIdAsReference = 1
                import {
                    data = levelfield:-1, og_image, slide
                    if.isFalse.field = og_image
                }
        }
      }
      returnLast = url
      forceAbsoluteUrl = 1
    }
    og:image:url.stdWrap.typolink {
        parameter.stdWrap {
            cObject = IMG_RESOURCE
            cObject.file {
                treatIdAsReference = 1
                import {
                    data = levelfield:-1, og_image, slide
                    if.isFalse.field = og_image
                }
            }
        }
        returnLast = url
        forceAbsoluteUrl = 1
    }

    #TWITTER
    twitter:title {
        data = page:twitter:title
        ifEmpty.data = levelfield :-1, title, slide
    }
    twitter:description {
        data = page:twitter:description
        ifEmpty.data = levelfield :-1, description, slide
    }
    twitter:image.stdWrap.typolink {
        parameter.stdWrap {
            cObject = IMG_RESOURCE
            cObject.file {
                treatIdAsReference = 1
                import {
                    data = levelfield:-1, twitter_image, slide
                    if.isFalse.field = twitter_image
                }
            }
        }
        returnLast = url
        forceAbsoluteUrl = 1
    }

}