web制作 | 夜間飛行 備忘録

web制作講座で教わったあれこれを書き留めていきます

95日目 | web制作 ~追記

前回の記事のwordpressですが、どうにか移動が完了したのでその経緯をまとめておきます。
覚えているうちに…。
まずサイトがこちら。
夜間飛行
教科書通りに動きます。

で、色々あったのですが、経緯をまとめておきます。

ロリポップwordpressデータを移植?したときのあれこれ

まず前回の記事の通り、
用意したものは、
①ローカルデータベースからのエクスポートsql
②ローカルのwordpressサイトからのエクスポートxml
③制作したmytheme
④uploads
の4つです。

これらを
1,データベースを作る(簡単インストールで作成)
2,出来上がったファイルにftpで接続して、上記③、④をアップロード

 ➔この時点ではサイトはちゃんと見えてました。

3,投稿記事をxmlでインポート

 ➔この時点でも、記事は個別には確認できました。ただサイトをいじったデータがないので
  記事にリンクしたページなどは表示できません。

4,サーバのデータベースにアクセスして、一度そこにあるテーブルを全消去
5,エクスポートしたsqlをインポート

 ➔ハイ、ここで消えました。

Access diniedです。
管理画面どころかWordPressのサイト自体にアクセスできなくなりました。

で…なんとなーくうっすらぼんやり原因はわかっていたのですが…
結局は接頭辞が違うのがいけなかった…のでした。

簡単な話ですが、私は今回授業で「wpの簡単インストール」をする前に、
自分用のwpをインストールしていたわけです。
そのせいで、今回の簡単インストールしたwpのテーブル接頭辞が、wp_2とかになっていたわけです。
にもかかわらず、データベースでwp2のテーブル全消去したあと、インポートしたsqlによって呼び出されたのは接頭辞wp_のテーブル。
そりゃ、うまく動くはずもありませんね…。

ということで、面倒くさいと思いながらも動かないのは話にならないし困るので、どうにかします。

<テーブル全部の接頭辞をまるっと変換>

 ➔不得意なSQLとにらめっこしつつ、結局はコピペで

ALTER TABLE wp_commentmeta RENAME TO wp2_commentmeta;
ALTER TABLE wp_comments RENAME TO wp2_comments;
ALTER TABLE wp_links RENAME TO wp2_links;
ALTER TABLE wp_options RENAME TO wp2_options;
ALTER TABLE wp_postmeta RENAME TO wp2_postmeta;
ALTER TABLE wp_posts RENAME TO wp2_posts;
ALTER TABLE wp_terms RENAME TO wp2_terms;
ALTER TABLE wp_term_relationships RENAME TO wp2_term_relationships;
ALTER TABLE wp_term_taxonomy RENAME TO wp2_term_taxonomy;
ALTER TABLE wp_usermeta RENAME TO wp2_usermeta;
ALTER TABLE wp_users RENAME TO wp_users;

こんな感じのものをテーブル全部にかけてやりまして、名前を変更しました。

しかし、これだけではまだまだ不具合が発生します。
なんせ「このページにアクセスするための十分なアクセス権がありません」とか出ます。
なんだと…?ッて感じです…。

ということで。

<細かいファイルを直していく>

とりあえずconfigファイルを直しました。>直し方は、ftpでダウンロードしてterapadなど(メモ帳以外)で直すか、私のようにロリポップftpで直接configを開いて書きなおすか、です。
直す箇所ですが…

/** WordPress のためのデータベース名 */
define('DB_NAME', '***');
/** MySQL データベースのユーザー名 */
define('DB_USER', '***');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', '***');
/** MySQL のホスト名 */
define('DB_HOST', '***');

$table_prefix以下も必要であれば…。私は必要なかったですが。

さてここまでやってから、用意するものがこちら。interconnectit.com
データベースにあるファイルを書き換えるものなんですが、大変お世話になりました。
ファイルをPCにダウンロードしたあと、
先ほど直したconfigファイルをアップロードしたのと同じディレクトリに
解凍したファイルごとぶち込みます。
そしてそのファイルにアクセス(http://WordPressを設置したurl/Search-Replace-DB-master/)すると、
f:id:knkasay:20150709220238j:plain
こんな感じの画面がでます。
一番上のreplace○○with●●
のところに、○○は直したい文字、●●は修正後の文字、という感じで入力し、
下の方にあるactionsの中からlive runをクリックすると、修正箇所を教えてくれつつ、
文字を入れ替えてくれる、というものです。
いやあ便利ですね。

※まんなかのtablesのところで、直したいテーブルを選択することができます。(デフォルトでオールテーブルになっています)
※その上のdatebaseには、最初に直したconfigファイルに入力した内容が正しく表示されていればOKです。画像では消してあるのでなにやらエラーがでてますが…。


さて、これを使って書き換えていくんですが…意外と書き換える場所がいっぱいありました。
参考サイトいわく、6つくらいかな??ysklog.net
こちら参考サイト様です。本当に助かりました…。

まず、wp_optionsテーブルですが、授業でもやったローカルサーバーからアップロードしたサーバーへ変換…というのをやるのですが、ここで苦手なsqlを取り出すと泣きそうになるので
先ほどのSearch-Replace-DB-masterを使います。
一番上左の空欄にlocalhostと入れて、右の空欄にアップロードしたサーバーのURLを入れるだけ…/を付けてはいけないというのは、授業でやりました。
その後、同じ要領で

wp_user_roles → wp2_user_roles
wp_capabilities → wp2_capabilities
wp_user_level → wp2_user_level
wp_dashboard_quick_press_last_post_id → wp2_dashboard_quick_press_last_post_id
wp_user-settings → wp2_user-settings
wp_user-settings-time → wp2_user-settings-time

と、全部入れては変換、という感じで直していきます。

これで…コレで完成です!
文字化けもせず、しっかりしゃっきりとブログも表示されて、完璧だ…!!

と、思ったら。

お問い合わせフォームが表示されてない。。。
これは授業で言っていたのをうっすら覚えていました…
プラグインをもう一度入れてやらないといけないんですよね、確かね。

インストールして有効化…。
ハイ、無事に出ました。

お疲れ様でした。

今回の色々は、ロリポップ上でもう一個wpをつくろうと思っている時には
多分わかってないとしんどいことだと思ったので、メモしておきます。