開発したWordPressサイトを本番環境に移行するこんにちは!フリーランスエンジニア兼ディレクターのショーヘー(@showheyohtaki)です。この記事は、Web制作初心者のかた向けに『実務で使えるWordPressを使ったサイト制作手法』ついて解説していく連載です。WordPressでショートコードを自作する【Gutenberg対応】11thステップであるこの記事では、開発したWordPressサイトを本番環境に移行する手順を解説していきます。WordPressテーマの移行に必要なものとは?これまでローカル環境で開発を進めてきた『TF30』を、本番環境(サーバー上)に移行させてみましょう!クライアントのサイトを開発する場合も、今回のようにローカル環境で開発してから本番環境にリリースするので、しっかり手順を抑えておいてください。(正確には、ローカル環境で開発→テスト環境にリリース→クライアントと確認作業→OKが出たら本番環境にリリース、と2回移行作業が入ることが多いです。)それでは、さっそく移行作業に入っていきますが、その前に移行が必要なデータはどれなのかを確認しておきます。詳しくはWordPress公式リファレンスやWordPressの教科書を読んで、体系立てて理解してほしいんですが、移行に必要なものは以下の4つです。WordPressの移行に必要なものthemesフォルダ(テーマが入ってる)pluginsフォルダ(インストールしたプラグインが入ってる)uploadsフォルダ(アップロードした画像類が入ってる)データベースのSQLダンプ(投稿データやユーザーデータなど、諸々を紐付けるデータ)1~3はwp-contentフォルダの中にあり、4はデータベース内(ここまで手順通りに進められた方は、ローカルのMySQLの中)に保存されています。本番にWordPress環境を整えた後、SSHやFTPを使ってこれらを移行させるのが基本的な移行手順になるんですが、現在は簡単にサイト移行できるプラグインがありますので、この記事ではそちらの方法を紹介します。本番環境として利用するサーバーはXserverを想定して解説していきますので、自分でサーバーを持ってない方は契約しておきましょう!この機会に、学習過程をブログで発信し始めるのもいいと思います。Xserverのメリットや契約の手順はこちらの記事で詳しく解説してますのでどうぞ。サーバーにWordPressをインストールするそれでは、さっそく移行作業を始めるため、サーバー上にWordPressをインストールしていきましょう。Xserverであれば、WordPressを動かすためのLAMP環境は最初から揃っていますし、インストールもボタン1つでできるので簡単です。管理画面の左下、『WordPress簡単インストール』をクリックしてください。(空きドメインがない方は、この作業の前にサブドメインを作ってくださいね!そちらにWordPressをインストールします)クリックしたら『WordPressインストール』というタブを開き、インストールしたい対象ドメインを選択して、上から順に情報を入力していくだけです。確認ボタンを押すと、インストール完了。3分かからずWordPressのインストールが完了したかと思います👍このまますぐプラグインの説明に移ってもいいんですが、その前に少しだけデータベースの利用の仕方を解説しておきます。インストール完了画面の『MySQLデータベース』に書いてある情報をエディタにコピーしておいてください。最近は便利なプラグインがたくさんあるので、WordPressを使ったWeb制作においてデータベースを触る機会は減りました。WordPressを使っておきながら『データベースって何?』『プラグインを使わない正規の移行方法ってどうやるの?』というフリーランスをちらほら見かけます。それは流石にレベル低すぎ...😔それで仕事を請け負ってて本当に大丈夫かな...と心配になります。WordPressのデータがどのように保存されているのか、どこから編集できるのかくらいは知っておきましょう。Xserver上でデータベースの中身を見るには、『データベース』の『phpmyadmin』を開きます。pypmyadminとは、ブラウザ上でMySQLの操作ができるツールのことで、Xserverではデフォルトでこのツールが準備されています。phpmyadminをクリックすると、ユーザーとパスワードを要求されますので、先ほどエディタにコピーしたMySQLユーザー名とMySQLパスワードを入力してください。ログイン後、データベース名をクリックすると、簡単インストール時に作られたWordPressのテーブル一覧が表示されたはずです。これまで記事データをデータベースに入力したり、データベースから取得したり、そんな記述を書いた覚えはないですよね。実はWordPressのコアファイルの中で、データの種類ごとに各テーブルへの振り分ける処理が記述されており、これらのテーブルからデータを出し入れすることで、WordPressは動作しています。本来、テーブル設計からデータの受け渡し処理まで、全てを自分で作らなければいけないところ、WordPressのコアファイルが肩代わりしてくれいるというわけです。して背景を知っていくと、WordPressがいかに便利かよく分かると思います。それでは、ざっくりphpmyadminで重要な機能とテーブルの紹介をしていきます。データベース内のダンプを取りたい(全データを抜き出したい)場合は、『エクスポート』で一括取得できます。逆にデータを一括入力したい場合は、『インポート』です。正規手順でWordPressを移行する場合は、このインポートとエクスポートを使います。データベースのダンプをエクスポートする(phpmyadminやSSHを使う)themes・plugins・uploadsフォルダを移行元から取得する(FTPやSSHを使う)SQL内のURLを移行元のドメインから移行先のドメインへ全置換する移行先のWordPressにthemesフォルダ達を移行する(FTPやSSHを使う)移行先のデータベースに編集したダンプファイルをインポートする(phpmyadminやSSHを使う)こんな流れです。これ以上詳しい解説は省きますが、ぜひ失敗しても困らないローカル環境とテスト環境で1度は練習しておくことをオススメします。脱線しましたが、phpmyadminの解説に戻りますね。WordPressの投稿系データは『wp_posts』テーブルに入っています。これまで何気なく使ってた『$post->ID』などの記述は、このようにテーブルに保存されたデータを取得して表示させていたんです。WordPressの管理ユーザー情報は、『wp_users』に入っています。ここに保存されたユーザーID、ユーザーパスワードと照らし合わせて、一致していたら管理画面にログインできる、というわけです。SQL文を直に書いてデータベースを操作したい場合は、タブの『SQL』から入力できます。WordPressのリレーションはなかなかに複雑で奥深いので、ヒマな時に、壊れてもいいローカル環境で、リファレンスを読みながらデータを操作してみると理解が深まります。Migrationを、ローカル環境と本番環境のそれぞれにインストールしてください。Migration』が追加されましたよね。ファイル』を選択します。するとダウンロード準備ができますので、このファイルをダウンロードしてください。ファイル』を選択します。先ほどローカル環境からエクスポートしたファイルを選択してください。インポートが始まります。インポートが完了したら、以下のような確認画面が表示されますので、『開始』をクリックします。これで注意書きの通り、データベース、メディア(uploadsフォルダ)、プラグイン(pluginsフォルダ)、テーマ(themesフォルダ)の、サイト移行に必要な4つ全てが一括でインポートされます。一度でも正規の手順でサイト移行したことがある方は、この手軽さに感動するはずです。テスト環境→本番環境にも使えますし、クライアントから『サーバー移行したい』と相談された時にも使えます。本当は教えたくないプラグインTOP5に入りますね...wちなみにサーバー環境→サーバー環境限定ではありますが、Xserverには『WordPress簡単以降』という機能が標準で付いており、移行元のURLと移行先のURL入力するだけでサイト移行できます。Xserver便利すぎる...!演習課題:ユーザーのログインID・パスワード・メールアドレスをpypmyadminを使って変更するこしば昔WordPressでサイト作ったんだけど、IDもパスワードも忘れてしまって...。パスワードリセットしようにも、メールアドレスも変わってて、どうやっても管理画面に入れない...。いったクライアントがた〜まにいらっしゃいます。Migrationではどうにもできない。こんなケースを想定して、データベースのユーザーデータを書き換えてログインする練習をしておきましょう。珍しいケースとはいえ、全くない案件ではないので、phpmyadminを使ってユーザーデータを書き換える練習をしておきましょう!書き換え条件ご自分のメールアドレス(好きなもの)ユーザーID:wp_adminパスワード:パスワード生成+ハッシュ化ツールまずデータが壊れても戻せるように、エクスポートでデータベースのバックアップをとってください。(1回で上手くいかなくても、バックアップしたデータをインポートすれば元に戻せます。いう要望を持っている方向けに、週に1度リアルなお役立ち情報を配信しています。投稿一覧おしゃべり好きな28歳Webエンジニア。立命法→大手で営業職→1年で退社→未経験でIT系に転職→2年修行→フリーランスエンジニアになり4年目です。PHP・Laravel・WordPressが専門。2019.07.03この記事は、Web制作初心者のかた向けに『実務で使えるWordPressを使ったサイト制作手法』ついて解説していく連載です。2019.06.09こんにちは、フリーランスエンジニア兼ディレクターのショーヘー(@showheyohtaki)です。2019.06.20こんにちは!フリーランスエンジニア兼ディレクターのショーヘー(@showheyohtaki)です。USイメージキャラクター『Freena』フリーランスの羅針盤となるメディアサイト『東京フリーランス』。フリーランスの皆さんに役立つコンテンツを配信しています。