TYPO3自定义页面属性

时间:2018-09-21 11:51:18

标签: php properties typo3

我正试图将“文章”页面类型的发布日期设为必填项。

我添加了此代码

$fields_article = array(
    'starttime' => [
        'label' => 'Publish Date',
        'config' => [
            'type' => 'input',
            'eval' => 'datetime,required'
        ],
    ]
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $fields_article);
$showItem = "--div--;Page Settings";
$showItem .= ",--linebreak--,starttime";
$GLOBALS['TCA']['pages']['types'][$doktypeArticlePage] = array(
    'showitem' => $showItem
);

这可行,但是它使所有页面类型的“发布日期”为必填项。可以仅将必需的标记添加到文章页面类型吗?

1 个答案:

答案 0 :(得分:1)

没有默认的基于类型设置eval的方法,因此恐怕没有简单的方法来实现这一点。

您最有可能通过自定义评估来执行此操作。有关更多信息,请参见https://docs.typo3.org/typo3cms/TCAReference/latest/ColumnsConfig/Type/Input.html#evalVendor\Extention\*部分。

或者,您可以创建一个新的必填字段,该字段仅显示在“文章”页面类型中,并使用TYPO3\CMS\Core\DataHandling\DataHandler中的其中一个钩子将其值复制到开始时间字段。