賢威をアップデートしたのに新バージョンが反映されない時の対処法

※当サイトにはプロモーションが含まれています。

にゃのらいとにゃのらいと

親テーマをアップロードしたけど、古い方の親テーマを見てるにゃ

ワードプレス(WordPress)テーマの賢威が、賢威8.0(Ver 8.0.1.12)になっていたので、アップデートすることにしました。

子テーマを使用しているので、アップロードの手順は、賢威のマニュアルサイトにある通りに実行。

サイトが表示されるのを確認して、古い親テーマのフォルダを削除したところ、サイトが消えました。

このサイトで重大なエラーが発生しました

(バックアップはとっていたので、慌てて元に戻しました。)

今回は、備忘録として、新しいバージョンに更新されなかった時の解決法について記載しておきます。

新しい親テーマが反映されない主な原因

新しい親テーマが反映されない主な原因として、まず最初に確認したことです。

なお、インストール(アップロード)した親テーマのフォルダ名は、下記の通りです。

  • 【旧】keni80_wp_standard_all_202403231915
  • 【新】:keni80_wp_standard_all_202410192107

1. 子テーマのスタイルシート(style.css)の確認

賢威のマニュアルにある通り、子テーマのスタイルシート(style.css)の記述は、新しい親テーマのフォルダ名になっていました。

子テーマのスタイルシート(style.css)

2.親テーマのファイル名とフォルダ名を確認

アップロードした親テーマのフォルダ名も確認しましたが、子テーマのstyle.cssと同じ新しい親テーマのフォルダ名でした。

FTPソフトでフォルダの確認

3.キャッシュのクリア

キャッシュ系のプラグインで「WP Super Cache」を使用していたので、キャッシュを削除して、プラグインの機能を停止。

再度、キャッシュを削除しました。

WP Super Cacheの設定画面

4.管理画面からログアウト

ひとまず、管理画面からログアウトして、「賢威環境情報」を確認しましたが、古い親テーマのフォルダを参照していました。
賢威環境情報変更前

原因はキャッシュにないことを確認したかったので、以下のコードをfunction.phpに追加しました。

function check_template_directory_uri() {
echo get_template_directory_uri();
}
add_action( 'wp_footer', 'check_template_directory_uri' );

このコードを、function.phpに追加すると、フッター(footer)のどこかに、「親テーマのディレクトリURL」を表示してくれます。

template_directory_uri()で親テーマのフォルダの確認

やはり、古い方のディレクトリを見てしまっているので、どうやら原因はデーターベースのようです。

※確認したら、今回、記述したコードは削除することをお忘れなく!

DBから新しいバージョンに更新する方法

ワードプレスはテーマや設定に関する情報をデータベースに保存しています。

多くの場合、テーマ関連の設定は、データベースの「wp_options テーブル」に保存されています。

※データーベースを作成する時に接頭辞を付けた場合は「wp(接頭辞)options」のような名称になっていると思います。

wp_optionsテーブルのtemplateと、stylesheetという、option_nameが親テーマと子テーマを参照しているので、確認しました。

wp_optionsテーブル変更前

やはり古い親テーマフォルダを参照していたので、自分は直接、データーベースを書き換えました。

wp_optionsテーブル変更後

これで、新しいバージョンの親テーマのフォルダを参照することができました。

賢威環境情報変更後

なお、データーベースを直接修正することは推奨しません。

その為、あえて詳しい説明を省きました(自分への備忘録なので・・・)。

今回のような場合、データーベースの情報を更新するには、

  1. 現在のテーマをワードプレスのデフォルトテーマ(Twenty Twenty-XX)に切り替えます。
  2. その後、再度、賢威のテーマ(子テーマ)を適用してみてください。

これで、データーベースの情報が書き換えられると思います。

また、キャッシュ系のプラグインを利用している場合、

親テーマに関連する情報が紐付いているかもしれないので、一度、そのプラグインを無効化してから、再度、有効化した方がいいかもしれません。

お疲れ様でした。