【WordPpress】Elementorで作ったWEBサイトを移管する手順|Duplicatorの使い方を実例で解説(ディレクトリを移動する方法)

wordpress-prograshi(プロぐらし)-kv WordPress
記事内に広告が含まれていることがあります。

Elementorを使ったサイトはレンタルサーバーなどの簡単引っ越し機能を使うと移管時にエラーが発生することがあります。

そんなときはElementorの公式ページでも推奨されているDuplicatorというプラグインを使った移管がおすすめです。

ここではその方法について手順を実例を踏まえて解説しています。


バックアップをとる

Duplicatorで移管する際に、データベースの設定などをミスると古いWEBサイトも新しいWEBサイトもどちらも表示されないといった事象が発生します。

必ず事前にバックアップをとるようにしてください。


Duplicatorのインストール

WordPressのプラグイン「Duplicator」をインストールし有効化します。


サイトのスキャン(移行可能か調べる)

有効化が完了したら、WordPress管理画面の下の方にある「Duplicator」メニューをクリックします。


右上の「Create New」ボタンをクリックします。


設定はデフォルトのままで「Next」をクリックします。


すると、現在のサイトをスキャンして移行可能かどうか調べてくれます。


エラー対処:The database size exceeds the allowed mysqldump size limit.

エラーの内容

サイトをスキャンした場合に以下のようなエラーが発生する場合があります。

エラー

The database size exceeds the allowed mysqldump size limit.

The database size is larger than the PHP memory_limit value. This can lead into issues when building a package, during which the system can run out of memory. To fix this issue please consider doing one of the below mentioned recommendations.

データベースのサイズが、許可されている mysqldump サイズ制限を超えています。

データベースのサイズが PHP のmemory_limit値を超えています。これにより、パッケージの構築時に問題が発生し、システムのメモリが不足する可能性があります。この問題を解決するには、以下で説明する推奨事項のいずれかを実行することを検討してください。


実際にサイトを確認すると設定は以下のようになっており、問題の memory_limitは512MBになっています。

php_value memory_limit 512M
php_value max_input_vars 2000
php_value post_max_size 64M
php_value upload_max_filesize 32M

最低でも639.94MB以上ということなので、ここで問題が発生しています。


エラー対処法

エラーの対処法も親切に記載してくれています。

エラー対処法

・RECOMMENDATIONS:

  1. Please change the setting SQL Mode to PHP Code. You can do that by opening Duplicator Pro > Settings > Packages.
  2. If you want to build the package with mysqldump, increase the PHP memory_limit value in your php.ini file to at least 639.94MB.
  1. SQL モードの設定を PHP コードに変更してください。これを行うには、[Duplicator Pro] > [設定] > [パッケージ] を開きます。
  2. mysqldump を使用してパッケージをビルドする場合は、php.ini ファイル内の PHP のmemory_limit 値を少なくとも 639.94MB に増やします。


memory_limit 値を少なくとも 639.94MB以上にするとのことなので、.htaccessを以下のように書き換えます。

php_value memory_limit 1024M
php_value max_input_vars 2000
php_value post_max_size 64M
php_value upload_max_filesize 32M


変更を保存したら、下部の「Rescan」ボタンをクリックします。


無事エラーがでなくなりました。


ビルドする

サイトをスキャンして問題がなければ「Build」ボタンをクリックします。


ビルドが完了すると次の2つのファイルがダウンロードされます。これをPCに保存しておきます。

生成されたファイル
  1. zipファイル
  2. installer.php



データベースの作成

続いて移動先のサーバー上に移管用のデータベースを作成します。

レンタルサーバーなどに入ってデータベースを生成します。

※ユーザーにすべての権限を付与してください。

以下情報を使用するのでメモっておきます。

必要な情報
  • データベース名
  • ユーザー名
  • パスワード



ファイルのアップロード

先ほどDuplicatorプラグインを使ってダウンロードした2つのファイルを移行先のディレクトリにアップロードします。

生成されたファイル
  1. zipファイル
  2. installer.php


サーバにファイルをアップロードする方法

サーバにファイルをアップロードする方法は以下をご参考ください。個人的にはWebDAVがとても簡単なのでお勧めです。(サーバーがWebDAVに対応しているのであれば)



Duplicatorインストーラーを開く

サーバーへのファイルのアップロードが終わったら、ファイルをアップロードしたディレクトリのURLの末尾に「installer.php」をつけてURLをたたきます。

  • ドメイン/installer.php


サブディレクトリに保存した場合は以下のようになります。

  • ドメイン/サブディレクトリ/installer.php

例えば、「example.comのtempディレクトリ」にファイルを保存した場合は、https://example.com/temp/installer.phpとなります。


URLをたたくと下記のDuplicatorの画面が表示されます。


OverviewはなにもいじらずでOKです。




データベースの設定

データベース接続情報の入力

Setupを開くとデータベースの接続情報が表示されます。


ここに移管用に作成したデータベースの情報を入力します。

  ↓


HOSTはレンタルサーバーによってはサーバーと表示されていることもあります。lolipopの場合は「~.phy.lolipop.lan」が該当します。

注意点

データベースの「Action」で何を選択するかは非常に重要です。Empty Databaseは対象のデータベースの中身を一旦削除(Empty)してから、移管するというものです。

完全に新しいデータベースを選択している場合は「Empty Database」でいいですが、そうでない場合は「Buckup Exsiting Tables」を選択してください。

【WordPress】Duplicatorのデータベースの移管設定はどれを選ぶべきか?(Empty database, Backup existing talbes, Skip database Extraction, Create new databaseの違い)


右下の「Validate」をクリックします。


通知の確認:utf8とutf8mb4の違い(Notice:Character Set and Collation Support)

データベースの検証で以下のような警告が表示されました。


警告の内容

このサーバーのデータベースはソース サイトの文字セット [utf8] をサポートしていないため、インストーラーはデフォルトの文字 [utf8mb4] を使用します。

現在のインストールで使用されている設定
DB_CHARSET = utf8mb4
DB_COLLATE = utf8mb4_0900_ai_ci

DB_CHARSET と DB_COLLATE は wp-config.php で設定されます (参照: wp-config.php の編集)。
ソース サイトの文字セットまたは照合順序がターゲット サイトのデータベースでサポートされていない場合、デフォルトが自動的に設定されます。

デフォルトの文字セット/照合順序が望ましいものではない場合は、詳細インストール モードで設定を変更できます。


MySQLではデータベースのデフォルトの文字コードとして「utf8」と「utf8mb4」を選ぶことができます。通常は「utf8mb4」を使用します。

上記通知では「utf8mb4」を使うといっているので、これでよしとします。

なお、これは一般的に呼ばれるUTF-8とは異っています。

文字コード概要
UTF-81文字を1〜4バイトで表現
utf8mysqlで使用。1文字を1〜3バイトで表現
utf8mb4mysqlで使用。1文字を1〜4バイトで表現



インストール実行

「I have read and accept all terms & notices*」にチェックを入れたら「Next > 」をクリックします。


インストール前の最終確認が表示されるので「OK」をクリックします。



Duplicatorの最終テスト

サイトの複製が完了すると自動でテストを実施してくれます。


問題がなければ「Admin Login」をクリックします。

インストールに使用したファイルを削除する必要がありますが、「Auto delete installer files after login to secure site (recommended!)」にチェックを入れておけば、管理画面にログインした際に自動でファイルを削除してくれます。


WordPressの管理画面にログインすると、移管が無事完了したと表示されます。


ただし、まだ完了ではありません。WordPressの管理画面で最後の仕上処理が残っています。


ページが見つからない場合

もとのサイトでSecurity Guardなどのプラグインを使ってWP管理画面のログインURLを変更している場合、「Admin Longin」をクリックしたときにページが見つかりませんと表示されることがあります。

このときログインURLが「https://ドメイン名/login_1234」のようになっていることがあります。

その場合は末尾のアンダースコア以下を消して「https://ドメイン名/login」としてください。


注意点:.htaccessは初期状態になる

Duplicatorを使ってサイトを複製すると、複製先のディレクトリに生成される.htasscessはWPを初期構築した状態のものになります。

もとのサイトでメモリリミットの変更や転送設定などを.htaccessに書き込んでいた場合は、移転先のディレクトリにある.htaccessに追記してください。



Elementorの処理

ElementorでURLを置換する(Replace URL)

Duplicator はサイトのコンテンツのほとんどの URL の置換を処理してくれますが、Elementorの場合はElementorの組み込みツールを使用してURLを置換する必要がある場合があります。

管理画面で「Elementor > Tools」をクリックします。


上部の「Replace URL」タブを選択します。

ここに旧サイトのURLと移管後のサイトのURLを入力し「Replace URL」をクリックします。


CSSとデータの再生成(Regenerate CSS & Data)



重大なエラーや500サーバーエラーが発生した場合の対処法

WordPressでDuplicatorなどの移管ツールを使ってサイトを移管した後に、WordPressの管理画面は表示されるのにWEBサイトが表示されないことがあります。

エラー1

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

WordPress のトラブルシューティングについてはこちらをご覧ください。


エラー2

このページは動作していませんsaporal.net では現在このリクエストを処理できません。HTTP ERROR 500


この原因はとても簡単で、.htaccessが新規作成されたために、もともと追記していたphp_memory_limitなどの、PHPサーバーの設定の記述がなくなってしまったためです。

修正は、もともとのコードを追記すればOKです。

詳細は下記記事をご参考ください。




参考サイト

Elementorブログ: Elementor を使用して WordPress サイトを移行する方法

タイトルとURLをコピーしました