子テーマの罠|テーマ更新が反映されないときに確認したいこと

テーマを更新したとき、なぜか反映されてないなんてことあったりしませんか?
実装されたはずの新機能が存在しないとか。

WordPressでカスタマイズを行う際、通常は子テーマを用いて行います。

施したカスタマイズを保持するためです。
しかし本記事では、トラブルを避けるために使っていた子テーマが、逆にトラブルを引き起こしてしまいました。
そのトラブルシューティングの記録です。

なおテーマ側(作者側)の問題ではなく、はっきり人災です。
トラブルシューティングの思考過程だけでなく、トラブルそのものにも御注意いただけたらと思います。

天満川鈴 WRITTEN BY 天満川鈴
スポンサーリンク

Luxeritasのブログカードが動かない!

Luxeritas附属のブログカードに乗り換え、しかし……

私がこれまで使っていたブログカードは、

  • 内部ブログカード:Simplicityから移植したブログカード
  • 外部ブログカード:Embedly

当時使っていたテーマLuxeritasにブログカードがなかったためですが、ついに実装されました。
しかしブログカードを乗りかえようとテーマをアップデートしてみたところ、

ブログカードが表示されない!

内部も、外部もただの文字リンクのままでした。
(もちろんfunctions.phpとstyle.cssから従前のブログカード関連コードは削除済みです)

トラブルシューティング

原因の切り分け

こういうときは、まずテーマカスタマイズを疑います。
子テーマから親テーマに切り替え……ダメ。

子テーマに戻して、今度はプラグインを全て外す。
やはりダメ。
うーん、なんとなく親テーマに再び切り替える……あれ?

表示された!?

どうして?
まあいい、念のためにプラグインを一つずつ戻して……戻し終えても表示されたまま。
ここで子テーマに戻す。

また消えた!

となると、原因は子テーマ。
つまりカスタマイズにある。

functions.phpをまるっと削除する→だめ。
style.cssをまるっと削除する→だめ。

親テーマに戻すと表示されるので、原因は子テーマで間違いない。
そして子テーマの構成ファイルの何かが原因なのも間違いない。
だったら、次は原因となっているファイル探しです。

もう、力技でねじ伏せてやる!

子テーマ丸ごと削除し、まっさらな子テーマをインストールし直します。
何もカスタマイズしていないのですから、当然ブログカードは表示されます。
一つ一つファイルを戻していく……あっ!

原因特定

原因は子テーマに入れて編集していたsingle.phpでした。

子テーマに single.php や header.php などのテンプレートファイルを置くと、親テーマより子テーマ側のファイルが優先して読み込まれます。

ただしカスタマイズそのものではありません。

カスタマイズ元に旧verのファイルを使ってたままだった……

だからアップデート内容が反映されなかったんです。
新たに1.41からsingle.phpを引っこ抜いてテンプレートカスタマイズをやり直したところ、無事に動きました。

まとめ

経験不足ゆえの盲点でした。
でも、こういうケースもあるということで一つ成長できました。

このトラブルは、テーマを問わず、時代を問わず起こりえます

GeneratePressでもCocoonでもLightningでもです。
そしてまたいつか、他のテーマで同じミスをやらかすかもしれません。
そのときに備え、今回の備忘録と反省として本記事を残します。

上手く動かないときは、カスタマイズしたファイルを全て疑いましょう!

 

スポンサーリンク
天満川 鈴のプロフィール画像
WRITTEN BY

天満川 鈴

未経験からWEB業界に入り、現在はWEBディレクターとして実務に従事。 要件整理・導線設計・コンテンツ構成などを学びながら、日々改善を重ねています。 AIを活用したコンテンツ制作・効率化を強みとし、プロンプト設計を含めた制作フローの最適化にも取り組んでいます。

詳しいプロフィールはこちら

RECOMMENDED INFRASTRUCTURE

私はConoHa以外を勧めない。

2016年からずっとConoHaを使い倒してきました。知人に「一番いいサーバーは?」と聞かれたら、迷わずここを教えます。

レンタルサーバーナンバーワンを誇る高速環境であることはもちろん。私が「黒い画面って何?」というド素人からサイト制作のプロになれたのは、傍らにずっとこのはちゃんがいてくれたから。
私がConoHaを使い続ける、嘘偽りない理由です。

※ConoHaに初めて入会の方限定。
本CTAの画像もしくはボタンを押してWINGパック12か月以上を契約すると、最大5000円割引してもらえます。

公式サイトで詳細を見る

「子テーマの罠|テーマ更新が反映されないときに確認したいこと」への7件のフィードバック

  1. 初めまして。こちらで質問させていただいてもよろしいでしょうか?
    (開発者様には難しい返答をされそうなので)
    WordPressは昨年から人様のサイトを修正したり、作ったりしていますが自分では利用していませんでした。
    これではいけないと思い、今年ようやく自分のホームページを作りました。
    初めてのホームページでいきなりLuxeritasを使い始めましたが、ブログカードが表示されません。
    子テーマも親テーマもカスタマイズはまったくしていません。

    最初の投稿からプログカードが表示されなかったので、そういう仕様なのかと思っていました。
    プラグインはいくつか入れましたが、その影響という可能性があるのでしょうか?
    とりあえず私のサイトのURLを貼っておきます。

    http://www.comono-item.com/
    何か少しでもわかることがありましたらお教えください。
    よろしくお願いいたします。

    • 初めまして
      テーマ本体に関することについては開発者様の方に問い合わせて欲しいのが本音なのですが……
      まあ恐らく大したトラブルでもないので

      WordPress管理画面ないし上部バーから「カスタマイズ」を選択
      →「ブログカード」を選択
      →「ブログカードを有効化」にチェックを入れる

      これで動くと思います(デフォルトでは確かチェック入ってなかったはず)
      違ってたら、また御連絡ください

      • こんばんは。
        ご返答ありがとうございます。
        「ブログカードを有効化」にはチェックが入っています。
        それでも使えません。
        何が考えられるでしょうか?
        開発者様は「常識」だとか「当然」だとか
        誰もがプログラマではないのに知っていて当たり前と押しつけてくるので
        質問するのが怖いのです(^_^;)

        • だとするとプラグインの干渉ですかね……
          プラグインを全部外して、テーマを立ち上げてみて下さい
          これで動くならプラグインが原因です(こういう作業を原因の切り分けと言います)
          動かないなら、ブログカードを動かそうとしてるページのURLを教えて下さい
          症状を具体的にみたいので

          • 一番最初に入れたプラグインを停止にしてみたら使えるようになりました…(^_^;)
            お騒がせしました。
            しかし、そのプラグインとはInstagramをブログ内に表示させるものでして、できれば使いたいのです。
            これはもう使えないということでしょうか?

          • そうなります
            テーマないしプラグインの設定を変更すれば回避できる場合はありますが、基本アウトと考えた方がいいです
            他のプラグインで代替できませんか?

          • 探してみます。
            お忙しいところをありがとうございました。

コメントは受け付けていません。

× 閉じる