Wordpressのシステム自体を丸ごと移設する場合
簡単インストールなどでWordpressシステムのバージョン差が気になる場合は、wp-content以外に全ての構成ファイルを移設しましょう。
そうすれば移設先でもWordpressバージョンを維持したまま移設が可能です。
ただしPHPバージョンにも差ができる場合がありますので、エラーが出る場合は一つずつ対処していきましょう。
Wordpressシステム丸ごと移設
これまで多くのWordpressサイトのサーバー移転作業の流れをご紹介してきました。
そのほとんどのケースで、移設先のサーバーにはWordpressを新規インストールしています。
手動でも可能ですが、レンタルサーバーの「簡単インストール機能」を使えばすぐにインストールできる訳ですね。
本記事ではWordpressの新規インストールではなく、移転元のWordpressシステム丸ごと移設する案件についてご紹介します。
どんな違いがあるのか
Wordpressを新規インストールする場合と、移転元のWordpressシステムを丸ごと移設するのとでは、大きな違いが出てきます。
それはやはり「Wordpressのバージョン」が維持できる事でしょう。
簡単インストールは最新版
レンタルサーバーのサービスにある「簡単インストール機能」は、大部分が「最新版」のインストールになります。
本記事執筆時点で言えば、Wordpress6.x系がインストールされる訳です。
簡単インストールを使うと、移転元と移転先のWordpressバージョンに差がでるのです。
バージョン差によるエラーを回避
移転元のバージョンがかなり古い場合、移設先でいきなり最新バージョンのWordpressになるとエラーが出る可能性が高まります。
この様なリスクがある場合、最新バージョンをインストールせずに元バージョンを継承するのが得策です。
つまり移転元のWordpressのシステムまで丸ごと移設する訳です。
移設対象となるデータの確認
移設する前に移設対象となるデータについて確認をしておきます。
最低限度必要なデータ構成
本来、Wordpressでサイトの構成に携わっているデータは「wp-content」の中です。
あとwp-config.php内の設定とDBデータが必要ですね。
・plugins
・themes
・uploads
・wp-config.php
・SQLデータ
それ以外にもサイトの作りによっては、wp-contentの内外にデータ構成がある場合もあります。
最低でも上記のデータをダウンロードして移設先にアップすれば、移設は可能な訳ですね。
それ以外の全ファイルが対象
しかし今回はWordpressのシステム自体を丸ごと移設するお話です。
そのためには、他にも以下の項目が全て対象になります。
・wp-admin
・wp-content
・wp-includes
・TOPディレクトリ上の全ファイル
とにかく「サーバー内の全てのデータ」になりますね。
これにより移設元と同じバージョンを維持しつつ、移設する事ができる訳です。
中には相当な容量のファイルがありますので、確実にダウンロード・アップロードするようにしましょう。
システム丸ごと移設の流れ
ではWordpressシステムを丸ごと移設する場合の流れについてご紹介しましょう。
SQLデータのエクスポート・インポート
DB操作のプラグインかphpMyAdminを使って、対象となるデータベースのテーブルデータをエクスポートしましょう。
それを移転先のデータベース内にインポートします。
大体はphpMyAdminからインポート操作する事が多いと思います。
既にデータベース内にテーブルがある場合、上書きしない様にする必要がありますね。テーブルの接頭語には注意しましょう(wp_やwp1_など)。
Wordpressデータの移設
次にサーバー区画内のWordpressに関する全データを丸ごと移設します。
先程説明したように、wp-content・wp-admin・wp-includesなど全ファイルですね。
初めておこなう人は不安かも知れませんが、全ファイルを移設すればきちんとWordpressは動きます。システムを信じましょう。
wp-config.php内の記述変更
唯一修正が必要なのは、wp-config.php内にあるデータベースの記述です。
移設先では、以下の内容が変わります。
・データベース名
・ユーザー名
・パスワード
・DBホスト名
上記の4項目を移設先の情報に変更する必要があるので、移転先のDB情報を調べて書き換えをしましょう。
上記情報を調べるには
移転先サーバーのコントロールパネルに「データベース関連」のメニューがあります。
そこに稼働中のMySQLデータベースの各種情報が記載されているはずです。
※もしくはサーバー契約時に届く設定情報案内のメールに記載されている場合もあります。
ここまで終われば、移設準備は完了です。
2つの課題
ではいよいよテスト確認です。大きく課題が2つあります。
切り替え前のテスト確認
現在はまだドメインのネームサーバーを切り替える前の段階なので、移設先データを確認する事ができません。
hostsファイルを変更するなどして、バーチャル確認が必要になりますね。
hostsファイルの編集方法
hostsファイルの設定に関しては以下の記事を参照下さい。
SSLサイトの場合
hostsファイルを編集しても、実は移転元サイトがSSL化されていると確認ができません。
「http:」でアクセスしても「https:」へ転送されてしまうためですね。
移転先にSSLが事前設定できない
大抵の場合、WEBサイトのSSLには「Let'sEncript」などの無料SSLを使っているはずです。
これらの無料SSLは事前の持ち運びができないので、引っ越しの際はいったん解除されてしまいます。
※移設先にSSL証明書を持ち運べるSSL契約の場合は別です。
無料SSLは、ネームサーバーを切り替えた後にしか発行できません。
つまりこの段階ではSSLが事前設定できないので、https:表示ができないのです。
https:へリダイレクトされる
http:で表示は可能なのですが、ブラウザにhttps:で表示するキャッシュがあるため転送されてしまいます。
このリダイレクトを解除して、何とかhttp:で確認しなければなりませんね。
SSL化する前のサイトを事前確認する方法については、以下の記事を参照下さい。
PHPバージョンの違いに注意
最後に、最も移転時に注意する事があります。それは「PHP」のバージョンです。
WordpressはPHPプログラムで動いており、そのベースとなるPHPにも様々なバージョンがあります。
バージョンが上がればそれだけ高機能かつセキュリティが高まるので、レンタルサーバーのバージョンはどんどん上がる傾向にあります。
ですので移転元と移転先で、当然稼働しているPHPプログラムのバージョンに「差」ができる事が多いです。
移設先サーバーのPHPの方が「バージョンが上」な訳ですね。
PHPバージョンの違いによるエラー
正直、WordpessのバージョンよりPHPのバージョンによるエラーが出る場合が多いと思います。
例えば弊職が担当した案件では、移転先でPHPが7.2系に上がりました(移転元は個人情報のため非開示でした)。
これにより事前確認時に、以下の様なエラーが出ました。
エラーコード
Warning: Use of undefined constant footer - assumed 'footer' (this will throw an Error in a future version of PHP) in /home/aaaaa/bbbbb.com/public_html/wp-content/themes/bbbbbb/footer.php on line 5
エラーの解消
これは、テーマファイル内phpで「定数部分を''で囲っていない箇所」がある事で出るエラーです。
つまり「未定義の定数」がある事を警告しており、定数部分を''で囲う事でエラーは解消しました。
これは一つの例であり、他にも様々なエラーが発生する可能性があります。
一つ一つ確認してエラーコードを検索して調査していく必要がありますね。
※もちろんテーマファイルの作り自体に問題があれば、都度修正では解決しない場合もあります。