erhaweb/l10ntable-extended

借助此扩展,Info模块内的本地化概览增加了“编辑所有语言覆盖记录”按钮,具有可自定义的字段。这使用户能够方便地对页面翻译的可配置字段进行批量编辑。

安装: 57

依赖项: 0

建议者: 0

安全: 0

星级: 0

观察者: 1

分支: 0

开放问题: 1

类型:typo3-cms-extension

1.0.2 2024-03-19 13:26 UTC

This package is auto-updated.

Last update: 2024-09-19 16:00:08 UTC


README

由Eric Harrer编写的TYPO3扩展

描述

借助此扩展,Info模块内的本地化概览增加了增强的编辑所有语言覆盖记录按钮,具有可自定义的字段。

Edit all language overlay records button

这使用户能够方便地对页面翻译的可配置字段进行批量编辑。默认情况下,只有titlenav_titlehidden字段在翻译视图中可用进行批量处理。现在,这可以扩展到任何(现有)页面字段。

Batch edit pages example with configured fields

安装

使用Composer安装此扩展:

composer req erhaweb/l10ntable-extended

如何使用

通过用户TSconfig进行全局配置

安装后,可以在User TSconfig中定义以下内容,以便管理员为后端用户组或单个后端用户指定可以编辑的列

tx_l10ntableextended {
  replaceColumnsList := addToList(seo_title,description)
}

User TSconfig

在此示例中,将seo_titledescription这两个字段添加到标准字段列表title,nav_title,hidden中。

当然,也可以省略默认使用的所有或某些字段,仅使用自己的字段。在这种情况下,通过简单的=语句覆盖默认列表。

tx_l10ntableextended {
  replaceColumnsList = seo_title,description
}

在页面类型上下文中不可用的字段(例如,类型为Folder [254]的页面的seo_title字段)在批量编辑上下文中不会显示。

不在$GLOBALS['TCA']['pages']['columns']中存在的字段根本不被考虑。

在站点包中覆盖全局配置

请注意,您的站点包必须在EXT:l10ntable_extended之后加载,以便可以在文件级别覆盖默认用户TSconfig。

可以通过在您的站点包扩展的ext_emconf.php文件中添加以下配置来实现:

$EM_CONF[$_EXTKEY]['constraints']['depends']['l10ntable_extended'] = '';

扩展配置

在“管理工具”>“设置”>“扩展配置”下,您可以确定是否允许非管理员后端用户在其用户设置中确定可编辑的字段列表。为此设置选项

enableUserSettings = 1

Extension Configuration

通过后端用户设置进行配置

如果已激活扩展配置中的用户设置,则所有后端用户(包括非管理员用户)都可以通过多选字段确定应可编辑的页面字段。

Backend User Settings

注意

请不要对此扩展期望太多。它基于函数TranslationStatusController::renderL10nTable最终输出的简单字符串替换。

缺点是,如果未来方法的输出发生变化,此扩展的功能将中断。毕竟,在TYPO3 v11和v12中,所需位置的输出始终保持一致。

此方法的优点是,尽管使用了XCLASS,但不会与核心行为出现任何问题。

提示

如果未来版本中TYPO3核心用于批量编辑的默认字段确实已更改,并且此扩展不再工作,请尝试更新以下默认 User TSconfig 设置以匹配新的字段列表

tx_l10ntableextended {
  searchColumnsList = title,nav_title,l18n_cfg,hidden|title,nav_title,hidden
}

管道符号 | 允许您定义要替换为最终HTML输出中 tx_l10ntableextended.replaceColumnsList 的多个可能的搜索列列表。这样,您就可以同时操作默认语言的按钮和非默认语言的按钮,从而对所有可用语言的单独可定义字段进行更改。

甚至 EditDocumentController 评估的 columnsOnly 参数的名称也可以使用以下设置进行自定义。

tx_l10ntableextended {
  columnsUrlParameter = columnsOnly
}

但是,通常情况下不应这样做。