如何在TYPO3 11后端恢复TYPO3 10的页面布局及搜索工具箱?
恢复TYPO3 10后端页面布局至TYPO3 11的方法
1. 恢复默认语言页面的「显示」按钮并移除「所有语言」选项
TYPO3 11对默认语言页面的显示逻辑和头部控件做了调整,可通过以下page.tsconfig配置还原TYPO3 10的行为:
// 隐藏文档头部新增的「所有语言」切换选项 mod.web_layout.hideLanguageSelector = 1 // 强制默认语言页面显示所有语言内容(匹配TYPO3 10默认行为) mod.web_layout.showAllLanguageColumns = 1 // 恢复页面的「显示」按钮 mod.web_layout.showViewButton = 1
将上述配置添加到站点根页面的TSconfig中,刷新后端即可生效。
2. 恢复页面布局模块文档头部的搜索工具箱
自TYPO3 11.2/11.3起,页面布局模块的搜索工具箱被移除,仅保留在列表模块。可通过两种方式恢复:
方法1:尝试TSconfig启用(优先测试)
在page.tsconfig中添加:
mod.web_layout.allowSearchToolbar = 1
部分场景下该配置可直接恢复搜索工具箱,若无效则使用方法2。
方法2:自定义后端JavaScript实现
创建一个简单的自定义扩展,通过JS将列表模块的搜索工具箱克隆到页面布局模块:
- 在扩展目录下创建
Resources/Public/JavaScript/PageLayoutSearch.js,写入代码:
document.addEventListener('DOMContentLoaded', () => { const listSearchToolbar = document.querySelector('#typo3-module-list .typo3-search-toolbar'); const pageModuleHeader = document.querySelector('#typo3-module-page .module-header-bar'); if (listSearchToolbar && pageModuleHeader) { const clonedToolbar = listSearchToolbar.cloneNode(true); pageModuleHeader.prepend(clonedToolbar); } });
- 在扩展的
ext_localconf.php中注册该JS模块,让后端加载:
$GLOBALS['TYPO3_CONF_VARS']['BE']['javascriptModules']['your_extension_key/backend/page-layout-search'] = [ 'path' => 'EXT:your_extension_key/Resources/Public/JavaScript/PageLayoutSearch.js', 'dependencies' => ['TYPO3/CMS/Backend/Module'], ];
替换your_extension_key为你的扩展标识,安装并激活扩展后,页面布局模块头部将显示搜索工具箱。
注意事项
- 配置和自定义代码需在TYPO3 11对应版本测试,避免因小版本差异导致失效。
- 自定义JS依赖后端DOM结构,若TYPO3后续更新调整DOM,需同步修改JS代码。
内容的提问来源于stack exchange,提问作者holgerd
相关产品推荐
相关产品推荐

