如何在我的typo3 自定义分机上启用隐藏按钮?

问题描述

我做了一个扩展,允许您创建自定义记录(想法),但认情况下,这个想法应该将“隐藏”字段设置为 1,以便后端用户可以在将其显示在前端之前批准它。 我有,“隐藏”列在那里,我的模型有一个隐藏属性,我可以将其设置为 1,并且记录没有在前端正确显示,但我不知道如何显示“隐藏记录”后端的按钮。 我需要显示与类别相同的隐藏按钮,但在我的自定义记录“想法”中。

enter image description here

我不太了解typo3,所以我不知道这是在哪里配置的。这是我的 tx 文件

<?PHP
return [
    'ctrl' => [
        'title' => 'LLL:EXT:my_custom_ext/Resources/Private/Language/locallang_db.xlf:hk_ideas_idea','label' => 'title','iconfile' => 'EXT:my_custom_ext/Resources/Public/Icons/Extension.svg','enablecolumns' => [ 
            'disabled' => 'hidden','starttime' => 'starttime','endtime' => 'endtime',],'columns' => [ ...(noting about hide field here)... ],'types' => [
        '0' => ['showitem' => 'title,description,category,status,user,Voted_users'],];

这是我的 tt_content 文件

<?PHP

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
    'vendor.Extension','Ideas','The Ideas Data Record List','EXT:my_custom_ext/Resources/Public/Icons/Extension.svg'
);

解决方法

将启用字段添加到您的 showitem

'types' => [
        '0' => ['showitem' => 'title,description,category,status,user,voted_users,hidden,starttime,endtime'],],

columns 部分也会有这些配置:

'hidden' => [
    'exclude' => true,'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible','config' => [
        'type' => 'check','renderType' => 'checkboxToggle','items' => [
            [
                0 => '',1 => '','invertStateDisplay' => true
            ]
        ],'starttime' => [
    'exclude' => true,'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime','config' => [
        'type' => 'input','renderType' => 'inputDateTime','eval' => 'datetime,int','default' => 0,'behaviour' => [
            'allowLanguageSynchronization' => true
        ]
    ],'endtime' => [
    'exclude' => true,'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime','range' => [
            'upper' => mktime(0,1,2038)
        ],
,

除了公认的答案,在学习 TCA 时,它可能会有所帮助:

  • TCA 已缓存,因此在进行更改时需要刷新缓存(或将开发系统配置为不缓存这些文件)
  • 查看后端中的现有配置(在配置 => $GLOBALS['TCA'] 中)

Look at TCA in Configuration module

Open styleguide

Look at generated records