WordPressテーマの更新(アップデート)完全ガイド
テーマの更新は、子テーマを使っているかどうかで結果が大きく変わるという点が、WordPress本体やプラグインの更新と大きく異なります。このページでは、テーマ更新の仕組み、子テーマによる保護、FSE(フルサイト編集・ブロックテーマ)特有の注意点、有料テーマのライセンス管理まで解説します。
- テーマ更新でカスタマイズが消える仕組みと子テーマによる保護
- 管理画面・有料テーマ(zip手動)の更新手順
- FSE(ブロックテーマ)特有の更新時の挙動の違い
- 有料テーマのライセンスキー切れで更新できなくなる問題への対処
- 更新後にデザインが崩れた場合の対処法
1. テーマ更新で何が起こるか
テーマを更新すると、テーマ提供元が配布する新しいファイル一式で、現在使用中のテーマフォルダの中身がまるごと上書きされます。これはWordPress本体の更新(コアファイルのみが対象でwp-contentは保護される)とは異なり、テーマフォルダ内に直接加えたカスタマイズは、更新のたびに全て消えてしまうという重要な違いがあります。
style.cssやfunctions.phpを直接編集してカスタマイズしている場合、次回の更新で編集内容がすべて失われます。
2. 子テーマの有無で結果が変わる
この問題を回避する標準的な方法が「子テーマ」です。子テーマは親テーマの機能を継承しつつ、カスタマイズだけを別フォルダに分離して保存する仕組みです。
| 状態 | 更新時の影響 |
|---|---|
| 子テーマを使っている | 親テーマが更新されてもカスタマイズは保護される |
| 親テーマを直接カスタマイズ | 更新のたびにカスタマイズが消える |
3. 更新前チェックリスト
1バックアップを取る:特にファイルバックアップは必須です。バックアップ完全ガイドを参照してください。
2子テーマを使っているか確認する:「外観」→「テーマ」で、有効化されているテーマ名に「子」「Child」等の表記があるか確認します。
3親テーマへの直接編集がないか確認する:子テーマを使っていても、誤って親テーマ側のファイルを編集していないか念のため確認しましょう。
4更新履歴(Changelog)を確認する:大きな仕様変更が含まれる場合、事前に把握しておくと安心です。
4. 更新手順
無料テーマ・WordPress.org掲載テーマの場合
1「外観」→「テーマ」で更新通知を確認
2「更新」リンクをクリック、または「ダッシュボード」→「更新」から一括更新
3更新完了後、サイトの表示を確認
有料テーマ(zip配布形式)の場合
ThemeForestやTCD、SWELL等の国内外の有料テーママーケットプレイスで購入したテーマは、WordPress.orgに掲載されていないため自動更新通知が出ません。多くの場合、以下の手順が必要です。
1テーマ販売元のマイページ・購入履歴から最新版のzipファイルをダウンロード
2「外観」→「テーマ」→「新規追加」→「テーマのアップロード」から新しいzipをアップロード
3既存テーマの上書き確認が出た場合は「はい、既存のテーマで置き換えます」を選択
5. 子テーマがない場合の対処法
既に親テーマを直接カスタマイズしてしまっている状態で、これから安全に更新したい場合の簡易フローです。
1現在のテーマファイルの中で、変更を加えた箇所を洗い出し、変更内容をテキストファイル等に記録・退避する
2子テーマの作り方ガイドを参考に子テーマを作成する
3退避しておいたカスタマイズ内容を、子テーマ側のファイルに移植する
4子テーマを有効化し、表示に問題がないか確認してから親テーマを更新する
6. FSE(ブロックテーマ)特有の注意点
Twenty Twenty-FourやTwenty Twenty-Five等のFSE(フルサイト編集)対応ブロックテーマは、更新時の挙動が従来のPHPテーマと異なります。
- サイトエディタでの変更:色・フォント・レイアウト等をサイトエディタ(外観→エディター)で調整した内容は、「スタイルのバリエーション」としてデータベース側に保存されるため、テーマ本体の更新による影響を受けにくい設計になっています。
- theme.jsonの直接編集:親テーマの
theme.jsonファイル自体を直接編集している場合は、通常のテーマファイルと同様に更新で上書きされます。 - テンプレートパーツのカスタマイズ:サイトエディタでヘッダー・フッター等のテンプレートパーツをカスタマイズした場合も、多くはユーザー編集分として保護されますが、親テーマ側で該当テンプレートパーツ自体が大きく作り替えられた場合は競合が生じることがあります。
7. ページビルダー併用時の注意点
ElementorやDivi等のページビルダーとテーマを組み合わせて使っている場合、テーマ更新後に稀にレイアウト崩れが起きることがあります。特にテーマ側がページビルダー用の専用テンプレート(フルワイド表示等)を提供している場合、テーマの大幅な更新でその連携部分が変更されることがあるため、事前に対応状況を確認しましょう。
8. 有料テーマのライセンス・更新情報管理
多くの有料テーマは、ライセンスキーが有効に登録されていないと更新情報自体を受け取れない仕組みになっています。
- テーマ購入時に発行されたライセンスキーを、テーマの設定画面またはテーマ販売元指定のプラグインに登録しているか確認
- 年間ライセンス制のテーマの場合、更新期限が切れていないか販売元のマイページで確認
- ライセンスが切れている場合、更新料を支払うか、セキュリティ修正のみは無料提供されないか販売元に確認
9. 更新後のデザイン崩れ対処
- ブラウザキャッシュをクリアする:まず自分のブラウザキャッシュを削除して再読み込みします。
- サイト側のキャッシュをクリアする:キャッシュ系プラグイン(WP Fastest Cache等)やホスティング側のキャッシュも削除します。
- 子テーマを使っていた場合:子テーマの機能自体は影響を受けないため、通常はそのまま解消します。解消しない場合は子テーマ側のCSSが新しいテーマ構造と競合していないか確認します。
- 解消しない場合:バックアップから復元し、原因の切り分けを行ってください。詳しくはバックアップからの復旧手順を参照してください。
10. 更新を見送るべきケース
- テーマのサポートが既に終了しており、開発元からの動作保証がない場合
- 大幅な仕様変更(デザインシステムの刷新等)を伴うメジャーアップデートで、事前のステージング確認ができない場合
- 既に別テーマへの移行を計画している場合(中途半端な更新よりも移行を優先)
よくある質問
Q1. 子テーマがない状態でテーマを更新するとどうなりますか?
A. 親テーマのファイルに直接加えたカスタマイズ(CSS・PHPの変更)は、更新時にすべて上書きされて消えてしまいます。functions.phpやテンプレートファイルを直接編集している場合は特に注意が必要です。更新前に子テーマを作成するか、カスタマイズ内容を別途記録・退避してください。
Q2. FSE(フルサイト編集)テーマも同じ方法で更新できますか?
A. 基本的な更新操作(管理画面からの更新)は同じですが、カスタマイズの保護方法が異なります。従来のPHPテーマは子テーマでCSS/PHPを保護しますが、ブロックテーマではサイトエディタで行った変更が「スタイルのバリエーション」やユーザー設定として別途データベースに保存されるため、多くの場合はテーマ更新の影響を受けにくい設計になっています。ただし親テーマのtheme.json自体を直接編集している場合は、更新時に上書きされる可能性があります。
Q3. 有料テーマの更新通知が管理画面に表示されません。なぜですか?
A. 多くの有料テーマは、ライセンスキーの有効な登録がないと更新情報を受け取れない仕組みになっています。テーマ販売元のマイページでライセンスキーが有効か、更新期間内かを確認してください。期限切れの場合は更新料の支払いが必要な場合があります。
まとめ・チェックリスト
テーマの更新で最も重要なのは「子テーマを使っているか」です。子テーマがあれば安心して更新でき、なければ更新前に必ず対策を取りましょう。
- ファイルバックアップを取得した
- 子テーマを使用している(使っていない場合は事前に作成した)
- 親テーマへの直接編集がないか確認した
- 有料テーマの場合、ライセンスキーが有効か確認した
- 更新履歴で大きな変更点がないか確認した