我使用前端的流体模板和后端的flexform xml文件创建了自定义内容元素。该元素有一个链接输入字段,该字段使用链接向导,如本问题中所述:
How can i make a Link input Field in TCA
这很好用,但是当我从向导中的页面树中选择一个页面时,输入字段会显示页面ID(例如" 4")。如果我在vanilla TYPO3提供的内容元素中使用相同的(?)向导(例如"快捷方式"页面类型),后端会在链接中显示页面的名称输入字段,而不是ID。 有没有一种简单的方法将该功能引入我自己的元素?
备注:就我而言,我不使用PHP数组写作风格,而是使用XML数据。那么什么是' config' => PHP数组中的数组(...)是...在我的XML Flexform中。
答案 0 :(得分:2)
这是标准行为,请参阅Link
下的示例Header
字段,它也使用了页面的uid,原因很简单:它允许选择页面,还可以选择外部URL,电子邮件地址或文件引用 - 因此它不使用页面标题,而是使用它的uid。
第二个示例 - 页面的快捷方式绝对允许您只存储pages
个记录,因此它可以在列表中呈现其标题 - 但不允许您混合使用不同类型的链接。
如果您的ext将始终存储一种类型的链接(即对页面的引用),您可以使用documentation
中显示的Group
类型的TCA字段
'storage_pid' => array(
'exclude' => 1,
'label' => 'LLL:EXT:lang/locallang_tca.xlf:storage_pid',
'config' => array(
'type' => 'group',
'internal_type' => 'db',
'allowed' => 'pages',
'size' => '1',
'maxitems' => '1',
'minitems' => '0',
'show_thumbs' => '1',
'wizards' => array(
'suggest' => array(
'type' => 'suggest'
)
)
)
),