好的 sys_catecory

TYPO3 sys_catecory

我正在使用 TYPO3 10 和新闻扩展。我的新闻页面分为四个选项卡,使用类别作为选项卡名称。我尝试输出类别,例如选项卡名称如果当前被选中并且想通过使用拼写错误在 title-tag 中作为标题输出,我该怎么做?

这是我当前的 TypoScript:

[page["uid"] == 6]

lib.categoryTitle = CONTENT
lib.categoryTitle {
    if.isTrue.data = GP:tx_news_pi1|news
    table = tx_news_domain_model_news
    select {
        uidInList.data = GP:tx_news_pi1|news
        pidInList = 57
        join = sys_category_record_mm ON tx_news_domain_model_news.uid = sys_category_record_mm.uid_foreign JOIN sys_category ON sys_category.uid = sys_category_record_mm.uid_local
        orderBy = sys_category.sorting
        max = 1
    }
    renderObj = TEXT
    renderObj {
        field = title
        htmlSpecialChars = 1
    }
}

page = PAGE
page {
  headerData {
    10 = TEXT
    10 {
      field = title
      noTrimWrap = |<title>News zu: | </title>|
    }
  }
}

page.headerData.10 =
page.headerData.10 < lib.categoryTitle

[结束]

您在复制时覆盖了 page.headerData.10 的类型:page.headerData.10 < lib.categoryTitle。所以它现在是一个 CONTENT-cobject,它没有 stdWrap-数据类型。所以 noTrimWrap 不再被考虑在内。

但它有一个 stdWrap-属性:将换行移动到 page.headerData.10.stdWrap.noTrimWrap。然后,又会出现一个title-tag,浏览器不会默认为URL。


2022-03-17 更新:

应用 lib.categoryTitle 的副本并进行上述修改后,应评估为 TypoScript:

page = PAGE
page {
  headerData {
    10 = CONTENT
    10 {
      field = title
      stdWrap.noTrimWrap = |<title>News zu: | </title>|
      
      if.isTrue.data = GP:tx_news_pi1|news
      table = tx_news_domain_model_news
      select {
        uidInList.data = GP:tx_news_pi1|news
        pidInList = 57
        join = sys_category_record_mm ON tx_news_domain_model_news.uid = sys_category_record_mm.uid_foreign JOIN sys_category ON sys_category.uid = sys_category_record_mm.uid_local
        orderBy = sys_category.sorting
        max = 1
      }

      renderObj = TEXT
      renderObj {
        field = title
        htmlSpecialChars = 1
      }
    }
  }
}

field不是CONTENT的属性,所以应该忽略,输出不能是“news zu:'Pagetitle'”