コンテンツへスキップ

Jetpack の「サイト統計情報」は複数のサイトのおおよそのアクセスを一覧するのにとてもわかりやすいので使っているのですが、先日サイトの中の一つに突然 Jetpack の「サイト統計情報」に元サイトとの連携が外れたとエラーが表示される。

ダッシュボード > Jetpack
連携できていない時はここで「連携」ボタンを押せば解決するはずなのだけれど、今回はこんなメッセージが

エラー詳細: The Jetpack server could not communicate with your site's XML-RPC URL. If you have the W3 Total Cash Plugin installed, deactivate W3 Total Cache, try to Connect to WordPress.com again, reactivate W3 Total Cache, then clear W3 Total Cash's cache.

エラー詳細: The Jetpack server could not communicate with your site's XML-RPC URLどうやら、以前入れていたプラグイン W3 Total Cash のデータが残っていて、それがきっかけで連携できないかもよ、ってことらしいです。
確かに以前 W3 Total Cash を使用していたのですが、そのサイトには必要性を感じずに削除したんです。
W3 Total Cache
なんか昔の彼女が忘れていったピアスを今の彼女に見つけられて大変なことになっちゃった感じですね。

で、調べたら結構ありました。

ネットでよく書かれている対処法

  1. W3 Total Cash を有効にして(又は再度インストールして)General Control にある enable チェックボックスをすべて外す。
  2. セーブする
  3. アンインストール
  4. サーバー(...wp-content/plugins)にアクセスし、残っているファイルを手動で削除

検索すると、どのサイトもこのやり方が書かれているのですが、ウチの場合何度試しても状況は改善されず、上記のエラーが表示され連携は完了しません。

結局、効果があった方法

Jetpack そのものを削除して再度インストール

これだけでOKでした。

設定はリセットされているので再度設定しなおして完了。
エラー内容が W3 Total Cash のことを具体的に書いてあったので、まさか Jetpack の方に問題があるとは思わなかった。

Connect Jetpack to WordPress

 

先日 bitnami をインストールしてみたら、All-in-One WP Migration というプラグインが一緒にインストールされていたので調べてみると、どうやらWPをデータベースごとエクスポート&インポートしてくださるらいしい。
今までデータベースの移行はMySQL をいじって・・・、と面倒だったのが、かなりお手軽になる模様。

このプラグインを作っている会社
https://servmask.com/

無料版の場合は、アップロードファイルサイズ 512MB という制限を受けるが、テストサイトをローカルで作成して、テーマなどを弄り数個の記事を書いてからレンタルサーバーに移行、なんて使い方には十分だ。

また、エクスポートしたファイルをクラウドサービス(Amazon S3やDropbox)にバックアップする場合や、512MBのサイズ制限を外したい場合、エクステンションを購入することで可能になる。
価格は59$〜79$(2015/09/25現在)
利便性を考えたらお安い値段と思う。

インストール

ダッシュボード > プラグイン > 新規追加
で "All-in-One WP Migration" を検索してインストール。

インストールして有効化すると
All-in-One WP Migration DashboardAll-in-One WP Migration というメニューが表示される。

エクスポート

ダッシュボード > All-in-One WP Migration > Export
All-in-One WP Migration exportそのままいじらなければ 「まるっとそのまんま」エクスポートする。
この時データベース内のメールアドレス等を変更したい場合などは、検索置き換えで指定する。[ +ADD ] ボタンで検索置き換え項目の追加が可能。

Advanced options はエクスポートの対象から外すことができる項目のリストが表示される。例えば media library を対象から外し、あとで FTP ソフトなどで手動で移動すれば 512MB の制限に引っかからなくてすむ、のかな?(ためしてないけど)

後は EXPORT TO - のところで FILE を選択すればダウンロードが始まる。
All-in-One WP Migration export2

All-in-One WP Migration export3ダウンロードすると .wpress という拡張子のファイルが作成されている。
今回はこんな感じ、小さな画像の入ったダミー記事を2つ書いただけなので 53MB となっております。
localhost-wordpress-20150925-081256-446.wpress

ダウンロード時の制限はないみたいだけれど、インポートするときのファイルサイズには 512MB という制限があるので注意。それ以上大きなファイルは有償。

ファイルのインポート

レンタルサーバーや他のローカル環境でもいいので All-in-One WP Migration が動くWPを用意する(WPのVer3.3以降)

※この時インポートとエクスポート両方のデータベースのPHPバージョンを揃えておくこと。場合によってはうまく読み込めない場合もある。

ダッシュボード > All-in-One WP Migration > Import
All-in-One WP Migration import点線の枠の中にダウンロードしたファイルをファイルを ドラッグ・アンド・ドロップ。

All-in-One WP Migration Loading読み込みが始まり・・・。

All-in-One WP Migration Loading2[ CONTINU ] ボタン押したら上書き完了しちゃうからデータベースのバックアップとったか確認してね。と注意が表示されるので、確認したら [ CONTINU ]

All-in-One WP Migration Loading3インポートの完了。

これですべて完了。
ものすごい簡単です。はじめデータベースの検索置き換えで元サイトと、新しいサイトのアドレスぐらい入れなきゃいけないかなと思って
http://localhost:8080/wordpress/

http://example.com
を置き換えていたけれど、それすらも自動でやってくれるのでとても楽です。
けれど、PHP などを使ってサイドバーにファイルを読み込ませている場合は、置き換えなければ動かないようです。

しかしプラグインもそのまんま移動できるので、テスト環境で色々試してから移行するには、これものすごく便利だわ。

作ってくれた人々ありがとう。


追記:2016-03-10

All-in-One WP Migration でデータをインポートしてみたら固定ページだけ「Not Found」が表示されてしまった。
(投稿ページは普通に読み込んでくれた)

はじめは All-in-One WP Migration での設定ミスかと思ったんだけれど、どうやらキャッシュ系のプラグインがダメだったらしい。
今回は MO Cache がひっかかっていた。

これをオフにしたらちゃんと読み込んでくれました。
パーマリンクなんかもいじらずにすんだからよかった。

エクスポートするときにはあらかじめキャッシュ系のプラグインはオフにしておいたほうが良いです。

%d人のブロガーが「いいね」をつけました。