【发布时间】:2021-12-02 09:45:01
【问题描述】:
我希望任何人都可以帮助我为媒体和图像元素添加自定义字段。
我创建了一个带有扩展名“sitepackage builder”的自定义内容元素。 我想用我的新变量为媒体元素添加一个字段。
我想这样添加:
媒体元素应该能够上传图片(例如 jpeg、png)和音频(mp3、mp4...)。如果我还可以在图片上添加其他类型的媒体,例如 pdf 等,那就太好了。
我知道如何在 TCA 中添加带有“资产”的媒体元素,但是我不能使用我的变量。
我在 TCA 中添加了两个字段,一个用于媒体,另一个用于图像。但是我需要两个变量。我只想对具有媒体和图像的字段使用一个变量。
这是我现在的媒体领域:
$GLOBALS['TCA']['tt_content']['columns'] = array_replace_recursive(
$GLOBALS['TCA']['tt_content']['columns'],
[
'tx_pagesaddfields_slider1_video2' => array(
'exclude' => 1,
'label' => 'Video',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_pagesaddfields_slider1_video2',
array(
'foreign_types' => array(
\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => array(
'showitem' => '
--palette--;;audioOverlayPalette,
--palette--;;filePalette',
),
\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => array(
'showitem' => '
--palette--;;videoOverlayPalette,
--palette--;;filePalette',
)
)
),
'wav,mpeg,mp4,ogg'
)
)
]
);
这是我现在的图像领域:
$GLOBALS['TCA']['tt_content']['columns'] = array_replace_recursive(
$GLOBALS['TCA']['tt_content']['columns'],
[
'tx_pagesaddfields_slider1_image2' => [
'exclude' => 1,
'label' => 'Image',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_pagesaddfields_slider1_image2',
[
'appearance' => [
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference'
],
'overrideChildTca' => [
'columns' => [
'crop' => [
'description' => 'field description',
],
],
'types' => [
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => '
--palette--;;imageoverlayPalette,
--palette--;;filePalette'
],
],
],
],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
),
],
]
);
就像我已经说过的,我只想为媒体和图像添加一个字段,如下所示:
我搜索了很多,但找不到代码。
如果您知道如何为媒体和图像添加自定义字段,请在此处回答。
感谢您的帮助。
【问题讨论】: