TYPO3 更改指定 tt_news 类别中的元值

TYPO3 change meta value in specified tt_news category

我有一个关于 tt_news 和 SEO 的问题。我想更改指定类别新闻中的某些元值。我尝试使用此代码但它不起作用:

[globalVar = GP:tx_ttnews|tt_news > 0] && [globalVar = GP:tx_ttnews|cat = 13]
   page = PAGE
   page.meta.robots = noindex
[global]

有什么建议吗?

条件 [globalVar = GP:param = foo] 检查 $_GET$_POST 数组(按此顺序)是否包含值为 fooparam,但它是t检查已使用类别的记录,因此您需要将自定义条件(reference)写入typo3conf/AdditionalConfiguration.php(TYPO3 6.x的强制位置!在4.x中很常见typo3conf/localconf_local.php) 这将检查是否有单个新闻的参数,然后将检查 tt_news_cat_mm table 新闻和类别之间的关系,准备使用的示例是:

/** For ext:tt_news only! (not for ext:news) */
function user_ttNewsInCat($catUid) {
    $newsParams = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('tx_ttnews');

    // If news is in params then check categories, otherwise skip it
    if (!is_null($newsParams) && is_array($newsParams) && intval($newsParams['tt_news']) > 0) {
        $newsUid = intval($newsParams['tt_news']);
        $matchesInMM = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'tt_news_cat_mm', "uid_local={$newsUid} AND uid_foreign={$catUid}");

        if (count($matchesInMM)>0) return TRUE;
    }

    return FALSE;
}

它在打字中的用法是:

[userFunc = user_ttNewsInCat(13)]
  page.meta.robots = noindex
[end]