ちょっとWordPressの無料テーマ「Cocoon」をカスタマイズしていたところ、投稿画面からアイキャッチが設定が消失したということがありましたので、その件に関する対応について残しておきます。
アイキャッチ項目が消えた、という状況
アイキャッチ項目が消えたという状況についてですが、通常の投稿画面でブロックエディタを使用している場合であれば「投稿の設定」のところにアイキャッチ画像を設定するための項目があります。
こちらの画像のような項目ですね。
今回の現象は、このアイキャッチ画像の項目が一切見当たらなくなった、という現象でした。
アイキャッチ項目が消えた場合の対応
アイキャッチ項目自体が消える、というのは初めてでしたので、いろいろと確認してみました。
その結果、対応としては以下になります。
- ブロックエディタの設定を確認する。
- 子テーマのstyle.cssを確認する。
この2点になると思われます。
ブロックエディタの設定を確認する
ブロックエディタには「設定」の項目があります。画面右上の歯車アイコンの横にある、メニューボタンを押すと選べます。
通常ですと、このように[設定]>[パネル]の中に「アイキャッチ画像」をオンオフ出来る機能があります。こちらがオフになっていないかを、まず確認してみてください。
今回の場合、設定云々の前にこの「アイキャッチ画像」の項目自体も存在していない状態でしたので、この方法では解決出来ませんでしたが、まず確認してみると良いと思われる項目です。
子テーマのstyle.cssを確認する
次に、子テーマをカスタマイズ中に現象が発生しましたので、子テーマを確認します。
WordPressのテーマ設定画面を確認するとCocoon Childが有効にはなっていましたが、エラーが吐き出されていました。
エラー: テンプレートが不足しています。独立したテーマには index.php
テンプレートファイルが必要です。子テーマでは style.css
スタイルシートにテンプレートヘッダーが必要です。
つまり、Cocoon ChildがCocoonの子テーマであると認識されていない、ということですね。
子テーマであると認識されていないのであれば、Cocoonの親テーマの方のfunctions.phpで設定されているであろうアイキャッチ項目が有効になっていないのは当たり前のことですので、こちらを修正。
今回は、別なオリジナルのテーマからstyle.cssを流用していたので、style.cssの冒頭コメントから以下の1行が抜け落ちていたのが原因でした。
Template: cocoon-master
こちらは、テーマ名ではなく親テーマのディレクトリ名を指定すべき箇所で、この記述によってCocoon ChildがCocoonの子テーマである、と明示されます。
style.cssに親テーマの情報を追記したところ、エラーは消え、アイキャッチ画像の項目も復活しました。
まとめ
Cocoonの子テーマカスタマイズ中に「アイキャッチ項目が表示されなくなる」というトラブルへの対応方法でした。
今回は流用してしまったせいで起きたトラブルですが、出来れば子テーマをカスタマイズする際にはコメント部はいじらないようにした方が良いかもしれませんね。
編集する際には、どこがどのように影響するのかをしっかりと確認しておいた方が良いかと思います。
コメント