srhinow / themecontent-bundle
不再需要使用假页面,而是将用于主题的内容在Contao中单独管理。
1.0.3
2024-09-20 10:12 UTC
Requires
- php: >=8.2
- contao/core-bundle: ^4.13 | ^5.3
README
在此,我们为Contao后端中的例如页脚或页眉内容元素创建了一个独立的结构,而不是像以前那样创建假页面结构。
动机
我在这里试图扩展Contao中常用的任务分离,包括主题特定内容和页面特定内容的分离。内容元素将继续存储在tl_content中。因此,可以像往常一样使用插入标记 {{insert_content::ID|ALIAS}} 来访问,并在导入/导出时可以针对性地过滤 ptable = 'tl_theme_section_article'。
插入标记
- 对于主题文章,使用 {{insert_theme_article::ID|ALIAS}}。
- 对于主题内容区域中的单个内容元素,可以使用 {{insert_content::ID|ALIAS}} 或 {{insert_theme_content::ID|ALIAS}}。
内容元素
可以使用内容元素 "主题文章" 和选择字段将特定文章从主题内容中嵌入。
前端模块
可以使用选择字段创建 "主题内容" / "主题文章" 前端模块,然后像往常一样将其作为页面布局或内容元素嵌入。
钩子
要覆盖主题文章的输出,可以使用 $GLOBALS['TL_HOOKS']['compileThemeArticle'],就像使用 $GLOBALS['TL_HOOKS']['compileArticle'] 一样。
这些将通过
- 主题内容
- 区域(如 "tl_theme_section" 类似于页面)
- 区域文章("tl_theme_section_article" 树结构按区域如 "文章" 以 ptable "tl_theme_section" 组织)
- 内容元素("tl_content" 以 ptable "tl_theme_section_article" 组织)
进行管理。