【问题标题】:TYPO3 Custom Page PropertiesTYPO3 自定义页面属性
【发布时间】:2019-02-25 19:56:25
【问题描述】:

我正在尝试为我的“文章”页面类型强制设置发布日期。

我添加了这段代码

$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
);

这很有效,但它使发布日期对所有页面类型都是强制性的。是否可以只在文章页面类型中添加所需的标签?

【问题讨论】:

    标签: php properties typo3


    【解决方案1】:

    没有基于类型设置eval的默认方法,所以恐怕没有简单的方法来做到这一点。

    您很可能通过自定义评估来做到这一点。有关详细信息,请参阅 https://docs.typo3.org/typo3cms/TCAReference/latest/ColumnsConfig/Type/Input.html#eval 中的 Vendor\Extention\* 部分。

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

    【讨论】:

    • 谢谢!两个答案看起来都不错,我会先尝试自定义 eval - 尽量避免创建不必要的字段,因为我已经有很多了。再次感谢
    猜你喜欢
    • 2011-12-19
    • 1970-01-01
    • 1970-01-01
    • 2023-01-19
    • 2013-09-16
    • 2011-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多