如何将 CropVariants 添加到 TYPO3 Flexform 中的图像字段

2023-12-14

我可以像这样覆盖 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
                                        ],
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
],

我尝试将其适应 Flexform - 但没有成功。所以我需要的是这样的东西(但工作:-))

<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>

以前有人这样做过吗?

如果不可能的话,也许我可以绕过 Flexform?我目前有一个带有图像字段的网格元素。

[更新] 正如 @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
        ],
    ],
];

写 ot as 也没有效果...

 \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
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ]
);

有人成功设置过吗?


要允许在 Flexform 中进行图像操作,您必须通过 overrideChildTca 属性启用它。

柔性形式示例:

        <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>

启用后,您可以通过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
      }
    }
  }
}

适用于 TYPO3 8 LTS

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 CropVariants 添加到 TYPO3 Flexform 中的图像字段 的相关文章

  • TYPO3 9.5.2 Slug:多语言:如果不存在页面翻译,则找不到页面 404 异常

    我有一个有两种语言的网站 例如德文和英文 De 是我的默认语言 没有路径前缀 En 第二种语言 在 url 中以 en 作为前缀 现在 当我切换到 en 语言时 菜单项链接的 url 中包含 en 这很好 但是 当我单击后端未显式翻译的菜单
  • TYPO3 Extbase 有关后端删除对象的单独代码

    当我的 Extbase 域对象之一从 TYPO3 后端的列表视图中删除时 我想执行一些单独的代码 认为它可以通过覆盖来工作remove o 相应存储库中的方法 例如 public function remove object parent
  • TYPO3 中的 eID 是什么?

    我已经多次遇到这个词了 通常 资源会直接解释如何做某事 但没有提及这是什么或它的用途 另外 很多资源都是德语的 或者不是很清楚 So 什么是 eID 这是 TYPO3 特有的东西还是一般概念 你能用它做什么 这对于 TYPO3 gt 9 仍
  • TYPO3:“access_group”字段的用途是什么?

    我不知道字段 access group int 11 DEFAULT 0 NOT NULL 的用途是什么 首先我认为这是受 user group 的限制 但有一个字段 fe group varchar 100 DEFAULT NOT NUL
  • RTE 显示我自己的 CSS 类作为选择的正确配置是什么?

    RTE 的配置随每个 大 版本而变化 现在我已经安装了第一个 7 6 我需要配置 RTE 以便编辑者可以为段落 跨度或表格设置特殊的类 例如编辑器应该能够选择表格 bootstrap 的默认样式 table striped table bo
  • 如何在 Typo3 6.1.5 中使用 PHP 从我的扩展中的 tt_content 渲染内容对象

    我需要使用我的扩展渲染 tt content 中的特定内容 我怎样才能做到这一点 TYPO3 CMS Frontend ContentObject ContentObjectRenderer 在 Extbase 扩展中 this gt cO
  • Fluid Typo3 - 如何从不同页面 uid 获取通过 Flux 定义的变量

    我想我的问题很容易解决 但我想了好几天 谷歌搜索并没有帮助我 也许我只是不明白这个概念 在我的提供程序扩展中 我定义了一个带有一个配置选项的简单主页 根据页面中 fontawesomeicon 的含义 其相应的 Fonteawesome I
  • TYPO3 v8.7 JQuery 包含在内吗?

    我将 TYPO3 版本从 6 2 31 更新到 8 7 19 现在 JS JQuery 出现了一些问题 我听说 JQuery 自动包含在新的 TYPO3 版本中 是对的吗 提前致谢 你需要更具体地回答这个问题 是的 v8 提供了 jquer
  • TYPO3 后端包含 CSS 文件吗?

    我正在尝试将级联样式表包含到我的 TYPO3 扩展中 我用 kickstarter 创建了扩展 这是我尝试包含它的方式 this gt doc gt getPageRenderer gt addCssFile t3lib extMgm ex
  • Typo3 CKEditor 图片来自 FAL

    我使用 CKEditor 设置了全新的 TYPO3 8 7 4 安装 并且rte ckeditor image从 FAL 获取图像 在文档中rte ckeditor image它说 最大尺寸与魔法图像的配置有关 必须在 Page TSCon
  • TYPO3 中的 Powermail 2.0

    我第一次在 TYPO3 4 7 中尝试 powermail 2 0 我在前端收到此错误消息 无法确定默认控制器 请检查 ext localconf php 中的 Tx Extbase Utility Extension configureP
  • TYPO3-Slug 无法使用 f:link.action 中的多个参数

    我尝试在 TYPO3 9 5 中从操作链接创建语音 URL 以便让下一页知道用户来自哪里 当我使用此代码作为操作链接时
  • Typo3 在特定页面的 body 标签中添加类

    我试图弄清楚如何有条件地将类添加到特定页面的正文标记 我试图通过typoscipt 来做到这一点 但一直无法弄清楚 也许有更好的方法来做到这一点 该网站使用的是 Typo3 版本 4 4 6 我试过这个没有用 page 4 bodyTag
  • TYPO3:如何将页面内容插入模板

    我有一些内容想要出现在 TYPO3 网站的多个页面上 我可以将其插入模板中 但我还希望该内容可以在富文本编辑器中编辑 所以我有了创建隐藏页面的想法 但我不知道如何将此内容插入到模板中 是否需要select打字稿声明 另外 作为后续问题 我可
  • typo3 extbase:验证表单

    我创建了一个简单的 订阅新闻通讯 表单
  • 扩展程序上传后,typo3 网站离线[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我刚刚向typo3 网站上传了一个新扩展 该网站就离线了 我收到 500 内部服务器错误 我可以做什么来倒回操作和 或使
  • 如何在 TYPO3 扩展中设置内容元素或插件的图标

    如何为内容元素和插件配置图标 有没有快捷方式可以只配置一次而不是在 3 个地方配置 AFAIK 有3个地方可以配置icons在创建新的自定义内容元素和插件时TYPO3后端 新内容元素向导 编辑内容元素 CE 时 CType list typ
  • Extbase查询比较同一个表中的两个字段

    是否可以在查询 API 中比较两个数据库字段 例如 我想比较字段 tstamp 和 crdate 如下所示 SELECT FROM tt content WHERE tstamp gt crdate 在查询 api 中我找不到解决方案 获取
  • Extbase - 从查询中获取创建的sql

    我想从我的typo3 扩展中获取一些数据库表 该扩展基于 extbase 查询总是不返回任何内容 但数据存在 我试过这个 query this gt createQuery query gt statement SELECT FROM my
  • 如何对单个 TypoSript 对象生成进行基准测试?

    我想对单个 TypoScript 对象生成进行基准测试以控制性能 是否可以使用某些 stdWrap 方法 我想要对其进行基准测试的 TS 对象示例 Test 1 page 10 RECORDS page 10 tables pages so

随机推荐

  • 将 unicode 转换为 char

    如何将 Unicode 字符串转换为char or char const in 内河码头 c String text Hello world char txt AnsiString text c str Older text t str i
  • 如何在 C# 中监控剪贴板内容变化? [复制]

    这个问题在这里已经有答案了 I want to have this feature in my C program When the user do Ctrl C or Copy anywhere i e when the clipboar
  • 在matlab中找到峰值

    假设我们确定向量中的峰值如下 我们有长度为 m 的实数值一维向量 或者 x 1 x 2 x 米 如果 x 1 gt x 2 则显然对于第一个点 Peak 1 x 1 否则我们将 x 3 与 x 2 进行比较 如果 x 3 indexes p
  • 如何将工具提示添加到 JavaFX Canvas 的矩形区域

    在我的 JavaFX 应用程序中 我有一个TableView具有多个列 其中一列以图形形式显示数据 为此 我创建了一个CanvasCell创建并管理自己的对象Canvas来处理绘图 绘图部分工作得很好 我现在想把Tooltips范围内的一些
  • 我怎样才能得出这个观点?

    List gt l user我有一个List具有用户引用字段的节点 l user Story gt s user然后我有Story也有用户引用字段的节点 s user 之间没有直接联系List and Story 我想添加一个视图List列
  • GWT 在 CloseHandler 中检测浏览器刷新

    我有一个 GWT 应用程序 我想在用户离开应用程序时运行一些代码以强制注销并删除任何数据等 为此 我使用 CloseHandler 并使用 Window addCloseHandler 注册它 我注意到 当单击刷新按钮时 会运行 onClo
  • dalvikvm:找不到类“android.*”

    在此输入图像描述开发时 应用程序在Android 5 0系统上可以正常使用 但是在5 0以下的系统中会出现应用程序无响应的情况 但不知道是什么原因 错误日志如下 E dalvikvm Could not find class android
  • 如何限制使用 argparse 解析的值(例如,将整数限制为正值)?

    到目前为止我有这个代码 import argparse parser argparse ArgumentParser parser add argument g games type int default 162 help The num
  • 如何在 C# 中重置计时器?

    有三种Timer我所知道的课程 System Threading Timer System Timers Timer and System Windows Forms Timer 但这些都没有 Reset 函数会将当前经过的时间重置为 0
  • C# 将 PDF 文件上传到 Firebase 项目存储?

    你们知道如何将 PDF 文件直接上传到 Firebase 项目存储吗 我在互联网上搜索了很多 但一无所获 有一些 C 的库吗 或者有 C 和 Firebase 的文档吗 请大家帮忙 谢谢 EDIT 好的 我找到了一个库 FirebaseSh
  • 由于异步,在 WebApi 中使用 HttpContext.Current 是危险的

    我的问题与此有点相关 WebApi 相当于具有依赖注入的 HttpContext Items 我们想使用 Ninject 在 WebApi 区域中使用 HttpContext Current 注入一个类 我担心的是 这可能是非常危险 如 W
  • 使用 Path.Combine 时出现路径遍历警告

    我目前正在使用 NewtonJSON 从 JSON 文件加载一些 UI 数据 但是 有一个警告说我有路径遍历 情况如下 有办法消除这个安全漏洞吗 当用户或其他不可信源提供的路径未经检查而与父路径组合时 路径遍历漏洞就可能发生 问题在于路径的
  • 如何以编程方式访问 Maximo 列表 where 子句

    在 Maximo 的 WOTRACK 应用程序中 我需要找到某种方法以编程方式访问当前窗口查询的 where 子句 很明显 它存在于 Maximo 中的某个位置 因为您可以在 UI 中的 高级搜索 gt Where 子句 下访问它 我需要找
  • 如何在HSQLDB和C#.net之间建立连接?

    如何在HSQLDB和C net之间建立连接 我已经看过 SharpHSQL 和 H2Sharp 但无法连接 HSQLDB 尝试这样 确保您已添加 hsqldb dll IKVM OpenJDK Core dll IKVM OpenJDK J
  • 仅使用 C 从 STDIN 读取一行以提取数字标记

    问题陈述 需要处理从 STDIN 接受的输入字符串 并仅查找字符串中存在的所有数字标记 将标记视为由空格分隔的可打印字符序列 在数字标记中 所有字符都是数字 您需要构建一个新字符串 其形式为 numeric token1 numeric t
  • iptables 脚本阻止除所需应用程序之外的所有互联网访问

    CONTEXT 我想要一个 shell 脚本来阻止所有到我的计算机的入站 出站流量 除非我决定要使用浏览器或其他应用程序 在这种情况下 我会调用它并且只有这些应用程序会运行 我研究了以前由聪明人制作的脚本 最后有源链接 并投入时间自己学习使
  • 随机生成 Spritekit 节点

    我正在制作一个游戏 其中有一个节点正在生成并从屏幕顶部掉落 但是我想让节点以 3 秒之间的随机时间间隔生成 因此 1 秒内生成一个 2 4 秒内生成下一个 1 7 秒内生成下一个 依此类推 我正在努力解决这个问题的代码应该是什么 我目前用于
  • “void();”是什么意思作为一个单独的语句在 C++ 中意味着什么? [复制]

    这个问题在这里已经有答案了 这个程序如何编译良好 int main void Does this create a void object here 我已经在 MSVC 和 GCC 下进行了测试 但void是一个不完整的类型 当您对任何其他
  • Android:在 Android Studio 中链接外部静态 C/C++ 库

    我已经看到了许多使用 Cmake 在 Android Studio 中运行本机代码的答案 但是 关于如何将预编译的 C C 库包含到 Android 中的答案却很少 以下是我尝试让本机库 首先尝试使用 a 工作所采取的步骤 1 mylib
  • 如何将 CropVariants 添加到 TYPO3 Flexform 中的图像字段

    我可以像这样覆盖 TCA 中图像字段的cropVaraints columnsOverrides gt image gt label gt LLL EXT myext Resources Private Language locallang