【发布时间】:2017-10-29 16:39:36
【问题描述】:
我在我的 TYPO3 v7.6.18 中使用tt_news 扩展(刚刚从 6.2.31 升级)
我遇到了类别树的问题。我为tt_news 类别渲染做了更多的调试,这是目前的问题:
旧的tca.php 看起来像这样:
'类别' => 数组(
'排除' => 1,
'标签' => 'LLL:EXT:tt_news/locallang_tca.xml:tt_news.category',
'配置' => 数组(
'类型' => '选择',
'form_type' => '用户',
'userFunc' => 'tx_ttnews_TCAform_selectTree->renderCategoryFields',
'树视图' => 1,
'foreign_table' => 'tt_news_cat',
'autoSizeMax' => 50,
'miniitems' => $confArr['requireCategories'] ? 1 : 0,
'maxitems' => 500,
'MM' => 'tt_news_cat_mm',
),
),
这给了我错误的结果,意思是,我没有得到一棵树,而是一个多选。现在,当我将类型更改为 user 时,我收到此错误:
致命错误:在第 167 行调用 /home/portal/typo3project/typo3conf/ext/tt_news/lib/class.tx_ttnews_TCAform_selectTree.php 中未定义的方法 TYPO3\CMS\Backend\Form\Element\UserElement::addSelectOptionsToItemArray()
我检查了类tx_ttnews_TCAform_selectTree方法renderCategoryFieldsand中的行,它看起来像这样:
$selItems = $fobj->addSelectOptionsToItemArray($fobj->initItemArray($this->PA['fieldConf']),$this->PA['fieldConf'],$fobj->setTSconfig($table, $row),$field);
$fobj 在函数定义中作为参考:function renderCategoryFields(&$PA, &$fobj) 似乎在某处定义错误,因为 addSelectOptionsToItemArray 位于 FormEngine 而 不是 UserElement.
由于该方法在像tx_ttnews_TCAform_selectTree->renderCategoryFields 这样的 tca 中被调用,所以我无法更改类,它正在使用。
任何想法如何解决这个问题?
【问题讨论】:
标签: php typo3 tt-news typo3-extensions