Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
7
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

@mayukojpn

WordPress Importer 最新版をつかってるのにエラーが消えない場合

稼働している WordPress サイトのお引っ越しって、何度も記事を移さないといけない場面が出てきがちです。
そのたびにデータベースまるごと入れ替えるのって面倒くさい!

そこで私は WordPress Importer を愛用しています。
エクスポートするときに、日付や、公開ステータスで絞り込みした XML を出せるので、便利。

エクスポート画面。引越し元は古いバージョンの WordPress だったりする場合があってUIが古いです。

最新バージョンでバグが有る

ところが、引越し先で最新の WordPress と WordPress Importer プラグインを使っているにもかかわらず、以下のようなエラーが消えませんでした。

Strict Standards: Redefining already defined constructor for class WXR_Parser_Regex in xxxxx\wp-content\plugins\wordpress-importer\parsers.php on line 408
Strict Standards: Declaration of WP_Import::bump_request_timeout() should be compatible with WP_Importer::bump_request_timeout($val) in xxxxx\wp-content\plugins\wordpress-importer\wordpress-importer.php on line 38

Trunk からダウンロードすればOK

調べてみたら、Trac にチケットがありました。
余談ですけど報告者の Kim さんって、 Docs チームのメンバーで昨年12月に亡くなった方だ。

これによると、リリースされてないけど /trunk のほうにあるプラグインは修正されているので、管理画面からインストールせずに http://downloads.wordpress.org/plugin/wordpress-importer.zip から直接ダウンロードすればいいとのこと。

もし「ディスクへのファイルの書き込みに失敗しました。」とメッセージが出たら

ネット上には、「パーミッションが間違ってないか確認しましょう」、とか、「php.ini の upload_max を上げましょう」、とか、そういうつまづきに対する助け舟はたくさんあるのですが、それでも解決しない方へ。一時ファイルの保存場所を疑いましょう。

普通のレンタルサーバーでは大丈夫そうですが、今回引き継いだサーバーでは /tmp ディレクトリに書き込み権限がないようでした。

今回は php.ini の設定ができるサーバーだったので、php.ini から /tmp ディレクトリの場所を指定し、 /tmp ディレクトリをブラウザから書き込み可能な権限にしてあげたら動きました。
(php.ini は、レンタルサーバーだと、専用の管理画面から書き換えが必要な場合が多いと思います。)

upload_tmp_dir = /(ルートの場所)/wp-content/tmp

/tmp 自体のパーミッションが変えられるなら、変えてもいいと思うんですけど、どっちのほうがサーバーてきに素敵なんだろう?知ってるひといたら教えて下さい。

ところで、通常は wp-config.php に以下を追加して、/tmp の場所が変更できますが、これだとプラグインのアップロードとか、そういうときは大丈夫なんですが、 WordPress Importer プラグインには反映されないみたいです。

define ('WP_TEMP_DIR', 'DIRECTORY PLACE FROM ROOT');

反映されたほうがいいような気がするのでチケットをたててみました。
どうだろうかしら。
#31976 (WordPress Importer ignore WP_TEMP_DIR in wp-config) – WordPress Trac

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
7
Help us understand the problem. What are the problem?