You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启用子主题后Gutenberg模板消失,如何使其在子主题下运行?

解决Gutenberg模板及部件在子主题下不显示的问题
  • 复制父主题模板文件到子主题
    Gutenberg的模板(templates文件夹)和模板部件(parts文件夹)默认从当前激活主题读取。把父主题里的这两个文件夹完整复制到子主题根目录,子主题就能直接使用原有配置的模板内容。

  • 确认子主题的父主题关联正确
    检查子主题style.css的头部声明,必须包含Template: 父主题目录名(比如父主题是twentytwentyfour,就写Template: twentytwentyfour)。WordPress靠这个识别子主题的父主题关联,确保Gutenberg能读取父主题的模板作为 fallback。

  • 迁移数据库中的自定义模板
    如果你的模板是通过Gutenberg编辑器自定义创建的,这些内容存在数据库wp_posts表中,类型为wp_template或wp_template_part,它们的theme字段默认是父主题slug。你可以直接在数据库里批量把这个字段改成子主题slug;或者在子主题的functions.php里添加一段代码,让Gutenberg加载父主题的自定义模板:

    add_filter('wp_theme_json_data_theme', function($theme_json) {
        $parent_theme = wp_get_theme()->parent();
        if ($parent_theme) {
            $parent_json = $parent_theme->get_file_path('theme.json');
            if (file_exists($parent_json)) {
                $parent_data = wp_json_file_decode($parent_json);
                $theme_json->merge($parent_data);
            }
        }
        return $theme_json;
    });
    

    这段代码会让子主题合并父主题的theme.json配置,其中包含模板和部件的关联信息。

  • 正确定制WooCommerce邮件模板
    定制邮件模板不需要改动Gutenberg的模板系统。在子主题下创建woocommerce/emails文件夹,把WooCommerce插件templates/emails目录中需要修改的文件复制到这个子主题文件夹里修改即可,这样既不会破坏父主题的Gutenberg模板,又能实现邮件模板的定制。

内容的提问来源于stack exchange,提问作者Bruno Bros

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 03:00:52