我可以像这样在TCA中覆盖图像字段的cropVaraints:
'columnsOverrides' => [
'image' => [
'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_be.xlf:general.field.image',
'config' => [
'overrideChildTca' => [
'columns' => [
'crop' => [
'config' => [
'cropVariants' => [
'default' => [
'title' => 'LLL:EXT:myext/Resources/Private/Language/locallang_be.xlf:wizard.banner.title',
'allowedAspectRatios' => [
'2:1' => [
'title' => 'LLL:EXT:myext/Resources/Private/Language/locallang_be.xlf:field.banner.image-crop.ratio',
'value' => 2 / 1
],
],
],
],
],
],
],
],
],
],
],
Run Code Online (Sandbox Code Playgroud)
我试图使这种方式灵活化-但没有成功。所以我需要的是这样的东西(但工作:-))
<foreign_selector_fieldTcaOverride type="array">
<config>
<appearance>
<elementBrowserType>file</elementBrowserType>
<elementBrowserAllowed>jpg,png</elementBrowserAllowed>
</appearance>
<overrideChildTca>
<columns>
<crop>
<config>
<cropVariants>
<default>
<title>Blubber</title>
<allowedAspectRatios>
<test>
<title>2:1</title>
<value>2 / 1</value>
</test>
</allowedAspectRatios>
</default>
</cropVariants>
</config>
</crop>
</columns>
</overrideChildTca>
</config>
</foreign_selector_fieldTcaOverride>
Run Code Online (Sandbox Code Playgroud)
有人做过吗?
如果不可能的话,也许我可以得到flexform?我目前有一个带有Image字段的网格元素。
[更新]正如@fnagel指出的那样,应该可以覆盖默认值,因此我尝试将以下内容放入Overrides / sys_file_reference.php中-但这没有效果-我什至无法在TCA-Inspector中找到该默认定义...
$GLOBALS['TCA']['sys_file_reference']['columns']['crop']['config?']['cropVariants??']['default'] = [
'title' => 'LLL:EXT:al_template/Resources/Private/Language/locallang_be.xlf:wizard.gallery.title',
'allowedAspectRatios' => [
'NaN' => [
'title' => 'LLL:EXT:al_template/Resources/Private/Language/locallang_be.xlf:field.gallery.image-crop.ratio',
'value' => 0.0
],
],
];
Run Code Online (Sandbox Code Playgroud)
写ot也没有效果...
\TYPO3\CMS\Core\Utility\ArrayUtility::mergeRecursiveWithOverrule(
$GLOBALS['TCA']['sys_file_reference'],
[
'columns' =>[
'crop' => [
'config?' => [
'cropVariants??' => [
'default'=> [
'title' => 'LLL:EXT:al_template/Resources/Private/Language/locallang_be.xlf:wizard.gallery.title',
'allowedAspectRatios' => [
'NaN' => [
'title' => 'LLL:EXT:al_template/Resources/Private/Language/locallang_be.xlf:field.gallery.image-crop.ratio',
'value' => 0.0
],
],
],
],
],
],
],
]
);
Run Code Online (Sandbox Code Playgroud)
有人为此成功设置了吗?
小智 5
要允许在flexform中进行图像处理,必须通过overrideChildTca属性启用它。
示例flexform:
<background_image type="array">
<TCEforms>
<label>LLL:EXT:myext/Resources/Private/Language/Backend.xlf:background_image
</label>
<config>
<type>inline</type>
<minitems>1</minitems>
<maxitems>1</maxitems>
<appearance type="array">
<createNewRelationLinkTitle>LLL:EXT:cms/locallang_ttc.xlf:media.addFileReference
</createNewRelationLinkTitle>
<enabledControls type="array">
<delete>1</delete>
<dragdrop>1</dragdrop>
<hide>1</hide>
<info>1</info>
<localize>1</localize>
</enabledControls>
<headerThumbnail type="array">
<field>uid_local</field>
<height>45c</height>
<width>45</width>
</headerThumbnail>
<useSortable>1</useSortable>
<showAllLocalizationLink>0</showAllLocalizationLink>
<showPossibleLocalizationRecords>0</showPossibleLocalizationRecords>
<showRemovedLocalizationRecords>0</showRemovedLocalizationRecords>
<showSynchronizationLink>0</showSynchronizationLink>
</appearance>
<behaviour type="array">
<localizationMode>select</localizationMode>
<localizeChildrenAtParentLocalization>1</localizeChildrenAtParentLocalization>
</behaviour>
<foreign_field>uid_foreign</foreign_field>
<foreign_label>uid_local</foreign_label>
<foreign_match_fields type="array">
<fieldname>media</fieldname>
</foreign_match_fields>
<foreign_selector>uid_local</foreign_selector>
<foreign_selector_fieldTcaOverride type="array">
<config type="array">
<appearance type="array">
<elementBrowserAllowed></elementBrowserAllowed>
<elementBrowserType>file</elementBrowserType>
</appearance>
</config>
</foreign_selector_fieldTcaOverride>
<foreign_sortby>sorting_foreign</foreign_sortby>
<foreign_table>sys_file_reference</foreign_table>
<foreign_table_field>tablenames</foreign_table_field>
<overrideChildTca>
<types type="array">
<numIndex index="0" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
<numIndex index="1" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
<numIndex index="2" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
<numIndex index="3" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.audioOverlayPalette;audioOverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
<numIndex index="4" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.videoOverlayPalette;videoOverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
<numIndex index="5" type="array">
<showitem>
--palette--;LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette
</showitem>
</numIndex>
</types>
</overrideChildTca>
</config>
</TCEforms>
</background_image>
Run Code Online (Sandbox Code Playgroud)
启用后,您可以通过TsConfig定义自定义比例:
TCEFORM.sys_file_reference.crop.config.cropVariants {
default {
title = LLL:EXT:lang/Resources/Private/Language/locallang_wizards.xlf:imwizard.ratio.free
selectedRatio = NaN
allowedAspectRatios {
NaN {
title = free
value = 0.0
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
适用于TYPO3 8 LTS
| 归档时间: |
|
| 查看次数: |
886 次 |
| 最近记录: |