LoginSignup
1
0

More than 3 years have passed since last update.

wordpress 公開サイト移行のちょっとした手順

Last updated at Posted at 2019-12-05

はじめに

案件でwprdpress構築を任せていただき、クライアントオッケーがでて、いよいよ公開!のタイミングになりました。
スムーズにクライアント希望時間に公開できるようにいろいろと下準備をしましたので、メモ代わりに書きます。
(実際には、まだ公開はしていないのでミスが発覚したら、随時書き換えます。)

経緯

とあるサイトにて、40ページ近くあるコンテンツを最初はhtmlで組んでほしいとの依頼で制作をしたものの、やはり自分たちで更新をしたいからCMS(wordpress)で作り直してほしいとのことで再度制作。

環境

新規でドメイン・サーバー(xさん)を契約し、htmlファイルを置いていました。
サブドメインにwordpressをインストールし、basic認証をかけながら構築を進めました。
なので、実質wordpressでの新規のサイト構築といったかんじです。
cssやjsは手を加えなくて済んだんで、助かりました〜。

WP構成

サブフォルダ

wordpressのインストール先をテスト・公開ともに、フォルダを一つかましています。
home/public_html/__cms
こうすることで、__cmsと同階層にindex.phpを置かない限り、テーマは表示されない。(ディレクトリアクセスされたら、エラーは出ますが少しの間なのでokとしておきます。)
なので、公開サイトに本来の静的ファイルを公開しつつ、裏ではテーマ移行を進めておくことができる。
worpressを本番サイトにインストールして、テスト環境とは別にデータベースも作成しておく

/assets/

また、__cms/と同階層にassets/をおき、その中にcss・js・img等をぶち込んでおく。必要なのはimgのみですが
こうすることで、静的ページなんかは長ったらしい画像パスを書かなくても、/assets/path/to/imgで読み込むことができる。
※元々の静的ファイルも画像パスは、全てルートパス読み込みしています。

データベース

エクスポート

phpMyAdminを使用して、テストサイトのデータベースを複製(エクスポート)する。

  • エクスポート方法は、全てのテーブルをインポートする場合は「詳細」(必要に応じて除外選択できる)を選択する。
  • 生成オプションについては、DROP TABLE / PROCEDURE / FUNCTION ...を選択しておくといいらしい。(ドキュメント参照)

DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」オプションを選択します。復元するデータベース上でテーブルを作成する前に、同名のテーブルが存在すれば DROP コマンドでこれを削除します。

  • あとは触らなくても、デフォルトで基本おkのはず。今回は特に触っていません。

そしたら、sqlファイルが出力されます!

インポート

今度は、新しく作成したDBに先ほどエクスポートしたDBを反映(インポート)させる。
インポートファイルを読み込んで実行する!
これでDBの複製ができる。

注意

今回の案件では一箇所かなとは思いますが、DB内にドメインが記述されている箇所がある。
そこをテストドメイン→本番ドメインに書き換えないとエラーが起こってサイトが見られない。ここは注意してねと言われただけなので、詳しく理解できていない、後日調べなければ!

今回変更したのは以下

  • wp_options option_name: site_url
  • wp_options option_name: home

20.06.19 追記

参考:https://www.vektor-inc.co.jp/post/multisite_iko/

テーマ

テーマの以降をする際は、duplicationを使うことが弊社では多い。しかし、今回は新規構築とのことで、プラグインを使用せずに、テスト環境から該当ファイルをインポートした。
テーマ移行に必要となるものは以下

  • themes / theme_name / 該当のテーマファイル一式
  • uploads (メディアアップの画像等が保管されている)
  • plugins インストールされていたプラグイン。これがインポートもエクスポートも時間かかる。我慢。

確認

ひとまず、上記が一通り完了したら、ちゃんと反映されているか確認する。緊張する。
https://domaindesu/__cms/wp-admin/で管理画面にアクセス。
(本当は、セキュリティのために管理画面URL変えていますが!)
投稿データ等間違えがなければひとまずおっけ

公開

サブフォルダにwordpressをインストールすると、同階層にindex.phpを置かないと、サイトアクセスできなくなるので注意。
テストサイトに置いているindex.phpを公開サイトに映して完了(のはず。。。現状、実作業がまだなのでわからない、、、)

あと、テーマのパーマリンクディレクトリと既存の静的URL(ディレクトリ)が同一の場合は、静的を消しておかないと、503エラーが出る。怖い。
index.php以降のタイミングの前に消しちゃいましょう!

スムーズに行くはずといっても、瞬間的にサイトが見れなくなるタイミングはあるので、メンテナンス画面も一緒に準備して、.htaccessでリダイレクトするとよし!
公開終了後には、コメントアウトするなりしないと、忘れたら怒られる。

最後に

本番公開うまくいくといいな。 無事完了しました!

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0