旧自定义WordPress主题启用站点编辑器失败的解决咨询
激活自定义WordPress主题的站点编辑器(Site Editor)及模板编辑器
要让旧自定义主题支持站点编辑器,仅添加现有代码不够,需完成以下关键操作:
1. 确认WordPress版本
站点编辑器从WordPress 5.9版本开始引入,确保你的站点运行5.9及以上版本,建议升级到最新稳定版以获得完整功能。
2. 更新主题支持代码
修改functions.php中的主题支持函数,补充关键的块主题支持声明:
function mon_theme_support_editor_de_site() { add_theme_support( 'wp-block-styles' ); add_theme_support( 'block-templates' ); add_theme_support( 'block-template-parts' ); // 新增:支持模板部件 add_theme_support( 'block-theme' ); // 新增:声明为块主题(WordPress 6.1+可用) // 若使用WordPress 5.9-6.0,替换上面的block-theme为: // add_theme_support( 'experimental-block-theme' ); add_theme_support( 'responsive-embeds' ); add_theme_support( 'align-wide' ); } add_action( 'after_setup_theme', 'mon_theme_support_editor_de_site' );
3. 创建块主题必需的目录与模板文件
站点编辑器依赖特定的目录结构和HTML模板文件,需在主题根目录下创建:
templates目录:存放全局模板,至少创建一个index.html作为基础模板,内容示例:
<!-- wp:template-part {"slug":"header","tagName":"header"} /--> <!-- wp:group {"tagName":"main","layout":{"type":"constrained"}} --> <main class="wp-block-group"> <!-- wp:post-content /--> </main> <!-- /wp:group --> <!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->
parts目录:存放模板部件,创建header.html和footer.html示例(可根据需求调整):header.html示例:
<!-- wp:site-title /--> <!-- wp:site-navigation {"layout":{"type":"flex","justifyContent":"right"}} /-->
footer.html示例:
<!-- wp:group {"layout":{"type":"flex","justifyContent":"space-between"}} --> <div class="wp-block-group"> <!-- wp:site-title {"style":{"typography":{"fontSize":"14px"}}} /--> <!-- wp:paragraph {"fontSize":"12px"} --> <p class="has-small-font-size">© 2024 你的站点名称</p> <!-- /wp:paragraph --> </div> <!-- /wp:group -->
4. 检查并清除缓存
- 清除WordPress后台的缓存插件(若有)缓存
- 清除浏览器缓存或使用无痕模式访问后台,避免旧页面缓存导致功能不显示
5. 排查冲突
- 暂时禁用所有插件,排查是否有插件禁用了站点编辑器功能
- 检查主题其他代码,确保没有
remove_theme_support( 'block-theme' )或类似禁用块主题支持的语句
内容的提问来源于stack exchange,提问作者Mathlan89
相关产品推荐
相关产品推荐

