Webサイト制作&キャラクターデザイン

  1. ブログホーム
  2. WordPress
  3. Create Block Themeで子テーマを作成したら「テンプレートパーツは削除されたか、利用できません: header」とエラーが出た話

Create Block Themeで子テーマを作成したら「テンプレートパーツは削除されたか、利用できません: header」とエラーが出た話

2023.5.26

Create Block Theme 1.11.0 で確認したところテーマの上書き保存時にテーマ名が出力されないように変更されており、このエラーは発生しません

先日Create Block Theme で子テーマを作成すると「テンプレートパーツは削除されたか、利用できません: header」(Template part has been deleted or is unavailable: header)と出てヘッダーが(フッターも)表示されなくなりました。

このエラーは親テーマをアクティブにして親テーマのテンプレートでテンプレートパーツが使用されている状態で親テーマの変更をCreate Block Themeで上書き保存し、再度子テーマをアクティブにすると発生します。この問題の回避策は下記のissueで解説されておりました。

出力されたテンプレート(htmlファイル)のヘッダー・フッタータグ部分にCreate Block Themeによってテーマ名(ここでは”theme”:”parent”)が記述されており、WordPressのサイトエディターがそれらをうまく読み込めずにエラーが起きているようです。テキストエディタ等で親テーマの名前を削除するとエラーは発生しなくなります。

修正前

HTML
<!-- wp:template-part {"slug":"header","theme":"parent","tagName":"header"} /-->

修正後

HTML
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->

今後のアップデートで改善されると思いますが、現状親テーマの変更をCreate Block Themeで上書き保存した際は手動でテーマ名を消す必要があるようです。

WordPressとCreate Block Themeは下記バージョンを使用しました。

  • WordPress 6.2
  • Create Block Theme 1.9.0