我希望任何人都可以幫助我為媒體和影像元素添加自定義欄位。
我創建了一個帶有擴展名“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']
),
],
]
);

就像我已經說過的那樣,我只想為媒體和影像添加一個欄位,如下所示:

我已經搜索了很多,但我找不到那個代碼。
如果您知道如何為媒體和影像添加自定義欄位,請在此處回答。
感謝您的幫助。
uj5u.com熱心網友回復:
看一眼 typo3/sysext/frontend/Configuration/TCA/tt_content.php
'assets' => [
'label' => 'LLL:EXT:frontend/Resources/Private/Language/Database.xlf:tt_content.asset_references',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('assets', [
'appearance' => [
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/Database.xlf:tt_content.asset_references.addFileReference'
],
// custom configuration for displaying fields in the overlay/reference table
// behaves the same as the image field.
'overrideChildTca' => [
'types' => [
'0' => [
'showitem' => '
--palette--;;imageoverlayPalette,
--palette--;;filePalette'
],
\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
'showitem' => '
--palette--;;imageoverlayPalette,
--palette--;;filePalette'
],
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => '
--palette--;;imageoverlayPalette,
--palette--;;filePalette'
],
\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
'showitem' => '
--palette--;;audioOverlayPalette,
--palette--;;filePalette'
],
\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
'showitem' => '
--palette--;;videoOverlayPalette,
--palette--;;filePalette'
],
\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
'showitem' => '
--palette--;;imageoverlayPalette,
--palette--;;filePalette'
]
],
],
], $GLOBALS['TYPO3_CONF_VARS']['SYS']['mediafile_ext'])
],
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/372621.html
上一篇:處理金錢投入的最佳方式
