公開中のブログのWordPressテーマを変更したいと思ったことはありませんか?
「新しいテーマに変えたいけど、サイトが崩れたら困る…」と不安で手が止まってしまう方は多いはずです。実際、WordPressのテーマを変更するとデザイン崩れやプラグイン不具合が発生することがあります。特に本番環境で直接テーマを切り替えるのはリスクが高く、訪問者に影響を与えてしまうことも…。
そこでおすすめなのが、サブドメインにテスト環境を構築し、十分に調整してから本番公開する方法です。少し工夫をすれば、小規模なサイトなら有料プラグインを使わず無料の範囲で実現できます。 本記事では、FTP(サーバーとパソコン間でファイルをやり取りする仕組み)と組み合わせて、お金をかけずにテーマを変更する手順を解説します。
この方法を使えば、失敗を恐れることなく安心してテーマ変更が可能になります。
サブドメインでテスト環境を作るメリット
テスト環境で作業することで、次のようなメリットがあります。
- 安心して作業ができる
-
本番サイトに直接変更を加えると、訪問者に崩れた状態を見せてしまうリスクがあります。
しかし、テスト環境で作業を行えば、本番サイトを保ちながら安全に変更を進められます。 - 自由にデザインや機能を試せる
-
テスト環境は本番サイトのコピーなので、失敗を気にせず新しいデザインやプラグインを自由に試せます。
何度でもやり直しができるため、納得がいくまで調整を重ねることができます。 - SEOやユーザー体験への影響を防ぐ
-
テスト環境を利用することで、検索エンジンにインデックスされるリスクを回避できます。
そのため、本番サイトのSEOや訪問者の体験に悪影響を与える心配がありません。
テスト環境の構築には、サブドメインを利用する方法が余分なコストもかからずオススメです。サブドメインを使うことで、1つのドメインを用途ごとに分けて、別のスペースとして利用することができます。
たとえば、本番サイトが example.com
の場合、test.example.com
のようなURLでサブドメインを作成して作業することで、本番サイトに影響を与えず安全に作業ができます。サブドメインの作成は、ホスティングサービスのサーバー管理パネルから簡単に行えます。
テスト環境構築の準備
WordPressで作られた本番のサイトを、サブドメインにコピーしてテスト環境を構築するためには、本番環境からファイルやデータベースをコピーするほか、データベース内のURL対策が必要になります。
まずは概要を解説します。
コピーすべきもの
移動に必要なものは、テーマを除くと、次の3つです。
- データベース(記事内容、WordPress設定、プラグイン設定など)
- プラグイン(プラグインのプログラムファイル)
- メディアファイル(画像、動画、PDFなどのアップロードファイル)
移転先にテーマをコピーしない場合は、新規にテーマのインストールが必要です。
URL対策の重要性
サブドメインへコピーするので、当然ですがURLが変わります。単純にコピーして移動しただけでは、データベースの中に記録されているURLは移転前の情報のまま書き込まれていますので、正しく表示してくれません。
そこで、データベースの中に記録されているURLを全て変更する必要があります。
ググると「wp_optionsのsiteurl」と「homeのoption_value」の2つを変更すれば良い、という記事を見かけました。しかし、記事の中など、他にもURLが記載されている場所はあるはずです。
データベース内のURLを検索して一括で変更してくれるのが、「All-in-One WP Migration」というプラグインです。このプラグインを使用して移転すると、簡単な操作でデータベースに記録されたURLを、移転先のURLに自動的に合わせて変更して書き込んでくれます。
サブドメインへの移転作業に必要なプラグインなど
使用するプラグインやアプリは、次の4種類。
- All-in-One WP Migration
- BackWPup
- 圧縮・解凍ソフト
- FTP
この記事では、これら4つを使って、無料で移動する方法を解説します。
大きなサイトになると、無料の範囲では出来ない可能性がありますが、小規模サイトであれば問題なく実行できます。
All-in-One WP Migration(データベースとURL変換で使用)
「All-in-One WP Migration」の有料版を使えば、このプラグイン1つでサブドメインへの移動が可能です。
ただし、本記事では無料で行う方法を解説するため、無料版を利用します。無料版にはインポート時の容量制限があり、別のプラグインで「最大アップロードファイルサイズ」を拡張しても、アップロードできないエラーが発生してしまいます。
そのため、移行する中身をデータベースやプラグイン(容量の大きなメディアファイル等を除いた部分)だけに限定して、無料の範囲内で使用します。データベースだけに制限することも可能です。
BackWPup
「BackWPup」は、WordPressのデータを丸ごとバックアップすることができるプラグインです。日々のデータのバックアップに使用されている方も多いと思います。
サーバーを移転するだけでURLが変わらない場合は、バックアップしたファイルをそのままインポートすれば復元出来ますが、サブドメインへ移動するので、バックアップしたファイルのうち、「All-in-One WP Migration」で除外したファイルを取り出して移動に使用します。
解凍ソフト
「BackWPup」でバックアップしたファイルをダウンロードした後、任意のフォルダーに解凍するために使用します。
Windows/Macは、標準でZIP形式の圧縮・解凍には対応していますが、ファイルを圧縮する形式は沢山あるので、専用のソフトを入れておいた方が、各種形式に対応出来るので便利です。
FTP
上記、圧縮・解凍ソフトで任意のフォルダーに解凍したファイルの一部を、移転先のフォルダーに転送するために使用します。
FileZilla や FFFTP など、お好みの物でOKです。
サブドメインへの移転の手順
作業はPCで行います。
移転の手順を細かく説明しているため作業内容が複雑に見えますが、流れをまとめるとシンプルです。
本番環境では「All-in-One WP Migration」でサイトデータをエクスポートし、「BackWPup」で全体のバックアップを取得します。
テスト環境では「All-in-One WP Migration」でインポートし、不足するファイルを「BackWPup」のバックアップから取り出してFTPでアップロードします。
では、具体的な手順を順番に見ていきましょう。
ローカルPCの準備
解凍ソフトをインストールして準備しておきましょう。Explzh や 7-zip など、何でもOKです。
BackWPupでダウンロードしたファイルを解凍する時に使います。
FTPソフトをインストールし、Webサーバーに接続できるようにしておきましょう。
FileZilla や FFFTP など、何でもOKです。
移転先の準備
サーバーの管理画面で、ブログの移行先にするサブドメインを作成します。
サブドメイン名は自由に設定できますが、”test”などの名前を利用します。
サブドメインのWordPressで利用するデータベースを、サーバーの管理画面で新規に作成します。
WordPressインストール時に自動でデータベースを作成する方は、この手順を飛ばして下さい。
新しく作成したデータベースにアクセスするためのユーザーを作成します。
ユーザー名とパスワードは、WordPressインストール時に使用します。
WordPressインストール時に自動でデータベースを作成する方は、この手順を飛ばして下さい。
MySQLで作成したユーザーに対してデータベースへのアクセス権限を付与します。
この設定を行うことで、WordPressからデータベースにアクセスできるようになります。
サーバーの管理画面で設定します。
サブドメインでの作業を外部に公開しないために、BASIC認証を設定してアクセス制限を行います。
これにより、作業中の内容を第三者に見られるリスクを軽減できます。
サーバー設定や.htaccessファイルを使って認証を有効にします。
サーバーの管理画面から、サブドメインにWordPressをインストールします。
インストール時にデータベース情報を入力する必要があるため、上記で作成したデータベース名やユーザー情報を用意してください。
移転先の管理画面からプラグイン「All-in-One WP Migration」をインストール・有効化します。
移転元(本番環境)の準備
本番環境の管理画面からプラグイン「All-in-One WP Migration」をインストール・有効化します。
本番環境の管理画面からプラグイン「BackWPup」をインストール・有効化します。
「All-in-One WP Migration」を使い、エクスポートします。
無料版ではインポートをする際に、ファイル容量の制限(デフォルトで60MB)があります。
「高度なオプション」で、次の内容をエクスポートしない様にチェックマークを入れることで、ファイル容量を小さくできますので、必要に応じて選択して下さい。
・メディアライブラリを除く
・テーマの除外
・プラグインの除外
・投稿リビジョンの除外
「サイトのエクスポート先」の中から、ファイルを選んで、ダウンロードします。
「BackWPup」で、全体をバックアップします。
完了後、作成されたバックアップファイルをダウンロードします。
FTPを接続し、「BackWPup」で作成したファイルをダウンロードすることも可能です。
移転先(テスト環境)にインポート
移転先のWordPressにて、「All-in-One WP Migration」でインポートを実行します。
移転元でエクスポートしたファイル(拡張子:.wpress)をインポートすることで、データベースの移行とURL変換が自動的に行われます。
インポート完了後は、以下の不足ファイルを転送しないと、正常に表示されません。
移転先(テスト環境)へ不足ファイルの転送
本番環境から「All-in-One WP Migration」でエクスポートした際に、「高度なオプション」でエクスポートしなかったファイルをFTPでアップロードします。
Explzh等を使って、「BackWPup」でバックアップした圧縮ファイルを、任意のフォルダーに解凍します。
任意のフォルダーに解凍したフォルダーの中の以下のフォルダーの中身のうち、「高度なオプション」でエクスポートしなかったファイルを転送します。この転送により、ファイル系の必要なものが移転できます。
public_html
└ wp-content
├ plugins
├ themes
└ uploads
FTPでサブドメインに接続し、対応するフォルダにそれぞれアップロードします。
なお、「All-in-One WP Migration」でのインポートと、FTPでの不足ファイルアップロードは、順番が前後しても問題ありません。
コピーの確認
コピーが完了したら、まずは本番環境からコピーしたデータがきちんと反映されているか確認します。
この時点でサブドメイン上に本番サイトと同じ内容が表示されていればOKです!
もし何か問題があれば、コピー作業をもう一度見直してみてください。
問題が無ければ、サブドメイン環境で作業をじっくり進めていきましょう!
サブドメインで、テーマ変更と調整をする
サブドメインにコピーが完成したら、新しいテーマを有効化し、次の点を確認・調整します。
- デザインの調整(色・フォント・レイアウトなど)
- プラグインとの相性確認
- レスポンシブデザインの確認(PC/タブレット/スマホ)
- コンテンツの最適化(記事の表示・画像サイズ・ショートコードなど)
これらを調整しながら、不具合を洗い出していきます。
サブドメイン環境なら何度失敗しても問題ないので、納得できるまで試行錯誤できます。
本番環境へ戻す手順
テスト環境での調整が完了したら、いよいよ本番環境への反映を行います。
手順は、サブドメインへコピーした時とほぼ同じです。
テスト環境の「All-in-One WP Migration」でサイトデータをエクスポートし、「BackWPup」で全体のバックアップを取得します。
本番環境では、メンテナンスモードのプラグインを入れ、メンテナンス中にした後、「All-in-One WP Migration」でインポートし、不足するファイルを「BackWPup」のバックアップから取り出してFTPでアップロードします。
いきなり本番環境へコピーするのが不安な方は、もう一つサブドメインを用意して、本番環境をコピーしておいて、そこにテストで書き込んでみるのもオススメです。
メンテナンスモードの設定
本番サイトの作業中は、訪問者に「メンテナンス中」の画面を表示するため、メンテナンスプラグインを導入します。
単純に「メンテナンスモード」と表示させるだけなら、「Simple Maintenance」(簡易メンテナンス)というプラグインがオススメです。特に設定項目は無く、有効化するだけでメンテナンス中のメッセージを表示させることができます。
より見栄えの良いデザインを表示したり、自分の好みのメッセージを設定したい場合は、「WP Maintenance Mode」(Maintenance – メンテナンス)というプラグインが便利です。
サブドメインから本番環境への移行
サブドメインで調整が完了したサイトを本番環境に移行する方法は、基本的にはサブドメインへの移行の場合と同じですが、既に公開されているので、若干異なる部分があります。
本番サイトにメンテナンスプラグインをインストールし、メンテナンスモードにします。
サブドメインで「All-in-One WP Migration」を使ってエクスポートを行います。今度はテーマ変更後のデータをエクスポートすることになります。この時の注意点は、本番環境からサブドメインにコピーした時と同様です。無料の範囲内で行う場合は容量制限に注意し、必要に応じて「BackWPup」と「FTP」による2段階移行を併用することになります。
「BackWPup」で、サブドメイン全体をバックアップします。
完了後、作成されたバックアップファイルをダウンロードします。
Explzh等を使って、「BackWPup」でバックアップした圧縮ファイルを、任意のフォルダーに解凍します。
本番環境の「All-in-One WP Migration」でインポートを実行します。
サブドメインでエクスポートしたファイル(拡張子:.wpress)をインポートすることで、データベースの移行とURL変換が自動的に行われます。
任意のフォルダーに解凍したフォルダーの中の以下のフォルダーの中身のうち、「高度なオプション」でエクスポートしなかったファイルを転送します。この転送により、ファイル系の必要なものが移転できます。
public_html
└ wp-content
├ plugins
├ themes
└ uploads
FTPでサブドメインに接続し、対応するフォルダにそれぞれアップロードします。
インポート完了後、本番サイトのすべての機能が正常に動作することを確認します。
メンテナンスモードの解除
すべての確認が完了したら、メンテナンスプラグインを無効化し、サイトを公開状態に戻します。
まとめ
この記事では、WordPressのテーマを安全に変更するための、サブドメインを使った方法を解説しました。
最大のメリットは、本番サイトに影響を与えることなく、じっくりと新しいテーマを調整できる点です。しかも、無料のプラグインとツールだけで実現できるため、小規模サイトの運営者でも経済的負担なく実践できます。最初は手順が多く感じるかもしれませんが、一度覚えてしまえば安心してテーマ変更ができるようになります。
ここで紹介した方法は、実際に当サイト「まとメモ」のデザイン変更を行った際に活用したものです。これまで使用していた「賢威7」から「SWELL」に変更しましたが、「賢威7」では多くのカスタマイズを加えていたため、そのまま切り替えるとデザインが大きく崩れ、利用できない状態になってしまいました。そのため、サブドメイン上で修正作業を重ねる必要があり、方法を調べ始めた時から公開まで、振り返ると約1年という長期戦になりました。
一方で、準備を終えた後の本番環境への移行作業自体は半日ほどで完了しました。サブドメインで調整している間も、本番サイトは公開し続けられたため、ダウンタイムはほぼゼロで済みました。
参考になれば幸いです。