supseven / inline-page-module
在页面模块视图中编辑 tt_content 记录的行内内容
Requires
- typo3/cms-backend: ^12.4
- typo3/cms-core: ^12.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.14.1
README
这是一个 TYPO3 扩展,为非页面记录(如新闻)的行内 tt_content 记录提供页面模块视图。
安装
使用 composer 将包添加为依赖项
composer require supseven/inline-page-module
版本 v2.x 需要 composer 模式下的 TYPO3 v12.4。版本 v1.x 支持较旧的 TYPO3 版本 v10.4-11.5,但不再进行常规维护。
配置
默认
重要:EXT:inline_page_module 不提供默认值,如新闻。所有应具有页面视图的字段都必须由集成者定义。
要将功能添加到表中,请在 TCA/Overrides/table.php
文件中使用 \Supseven\InlinePageModule\PageModuleSwitcher::register
方法来生成所需的 TCA 设置。此函数需要第一个参数为表名。
// Add to news table \Supseven\InlinePageModule\PageModuleSwitcher::register('tx_news_domain_model_news');
带有后端布局
第二个参数可以是后端布局的名称。页面模块将使用此后端布局。如果后端布局应具有不同的列名或如果 tt_content 记录的 colPos
值与继承布局不同,则这很有用。
例如,使用以下 PageTS
mod.web_layout.BackendLayouts.News {
title = News Elements
config.backend_layout {
colCount = 1
rowCount = 1
rows.1.columns.1 {
name = News Content
colPos = 0
}
}
}
此后端布局可以与以下内容一起使用
// Add to news table with backend layout "News" \Supseven\InlinePageModule\PageModuleSwitcher::register( 'tx_news_domain_model_news', 'News' );
所有后端布局的配置保持不变,包括 EXT:content_defender
限制。
重要:目前不支持在同一个页面布局视图中从多个字段引用多个“colPos”的记录。每个字段都有自己的视图。
限制字段
如果表有多个具有行内关系到 tt_content 记录的字段,则页面模块切换将添加到所有这些字段中。要将此限制为仅一个或多个字段,请将这些字段的名称添加到方法的参数 $fields
中
// Add to news table, but only to own field \Supseven\InlinePageModule\PageModuleSwitcher::register( 'tx_news_domain_model_news', fields: ['tx_my_tt_content_field'] );
扩展配置
此扩展提供了一个配置 在页面模块中列出所有可用内容元素
,默认情况下已禁用。大量内容元素(例如,来自新闻记录提供的内容元素)可能导致超时,如果在页面模块中访问包含这些行内内容元素的文件夹。此设置可防止加载所有内容元素。
使用
遵循上述示例后,新闻记录将有一个“在页面视图中编辑”按钮(红色箭头)
单击此按钮将打开包含引用的 tt_content 记录的页面模块
在此视图中,所有常见编辑选项(如拖放排序或“新建”和“删除”按钮)都像在页面模块中一样工作。
“返回...”按钮是链接到父记录表单的链接。
在此视图中,TYPO3 后端左侧的页面模块导航点未激活。此外,包含父记录的页面(仍然)是被选中的。
法律
许可协议
此软件包在 GPL v3 许可协议下提供。有关详细信息,请参阅文件 LICENSE 或 https://gnu.ac.cn/licenses/gpl-3.0。
通知
TYPO3 在 GPL 许可协议下提供,版本 2 或更高。有关详细信息,请参阅 https://typo3.org/project/licenses。
本文中提到的“新闻”包指的是在GPL v2或更高版本下提供的扩展新闻。
扩展图标是ionicons图标库的一部分,该图标库在MIT许可下提供。