我正试图将“文章”页面类型的发布日期设为必填项。
我添加了此代码
$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
);
这可行,但是它使所有页面类型的“发布日期”为必填项。可以仅将必需的标记添加到文章页面类型吗?
答案 0 :(得分:1)
没有默认的基于类型设置eval
的方法,因此恐怕没有简单的方法来实现这一点。
您最有可能通过自定义评估来执行此操作。有关更多信息,请参见https://docs.typo3.org/typo3cms/TCAReference/latest/ColumnsConfig/Type/Input.html#eval的Vendor\Extention\*
部分。
或者,您可以创建一个新的必填字段,该字段仅显示在“文章”页面类型中,并使用TYPO3\CMS\Core\DataHandling\DataHandler
中的其中一个钩子将其值复制到开始时间字段。