【问题标题】:TYPO3 TCA/Flexform Link Wizard: How to display page name in the backend?TYPO3 TCA/Flexform Link Wizard:如何在后端显示页面名称?
【发布时间】:2015-04-24 08:26:47
【问题描述】:

我使用一个流畅的前端模板和一个后端的 flexform xml 文件创建了一个自定义内容元素。该元素有一个链接输入字段,该字段使用链接向导,如以下问题所述:

How can i make a Link input Field in TCA

这很好用,但是当我从向导的页面树中选择一个页面时,输入字段会显示页面 ID(例如“4”)。如果我在 vanilla TYPO3 提供的内容元素中使用相同的 (?) 向导(例如“快捷方式”页面类型),则后端会在链接输入字段中显示页面的 name,而不是ID。 有没有一种简单的方法可以将该功能带到我自己的元素中?

备注:就我而言,我不使用 PHP 数组编写风格,而是使用 XML 风格。那么 PHP 数组中的 'config' => array(...) 是...在我的 XML Flexform 中。

【问题讨论】:

    标签: typo3 fluid extbase typo3-tca


    【解决方案1】:

    这是标准行为,请参阅Header 下的示例Link 字段它也使用页面的 uid,原因很简单:它允许选择页面,还允许选择外部 URL、电子邮件地址或文件引用- 因此它不使用页面的标题,而是使用它的 uid。

    第二个示例 - 页面快捷方式绝对允许您仅存储 pages 记录,因此它可以在列表中呈现其标题 - 但不允许您混合不同类型的链接。

    如果您的分机将始终存储一种类型的链接(即对页面的引用),您可以使用 Group 类型的 TCA 字段,如 documentation 所示

     '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'
                             )
                     )
             )
     ),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-02
      • 2017-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多