wp-cliではXMLファイルのエクスポートがコマンドラインでできることをこちらでやってみましたが、今度はインポートしてみたいと思います。正しくインポートできたかどうかを確認するために、今回は以下の順序で作業してみたいと思います。
- エクスポート実施
- 投稿記事と固定ページの削除
- インポート実施
エクスポートはあらかじめこちらの手順で行います。次に投稿記事と固定ページを削除しますが、削除対象をゴミ箱に放り込まず、完全に削除しましょう。でないと、インポート時に重複エラーとなってしまいます。
# wp --allow-root post delete 1 --force --path=/home/vhosts/wp-centos7/public_html/ Success: Deleted post 1.
# wp --allow-root post delete 2 --force --path=/home/vhosts/wp-centos7/public_html/ Success: Deleted post 2.
上記のように、引数に「–force」をつけると完全に削除することができます。ゴミ箱行きの削除が成功した際、メッセージは「Success: Trashed post 1.」と表示されますが、完全削除に成功したときは「Success: Deleted post 1.」と表示されます。メッセージの違いに気をつけましょう。
それでは、いよいよインポートです。
# wp --allow-root import ./wordpress.2015-01-04.0.xml --authors=create --path=/home/vhosts/$(uname -n)/public_html/ Starting the import process... Processing post #1 ("(っ´∀`)っ ゃー") (post_type: post) -- 1 of 2 -- Sun, 04 Jan 2015 05:35:09 +0000 -- Imported post as post_id #1 -- Added terms (1) for taxonomy "category" -- Added comment #14 (1 of 1) -- Added post_meta _pingme -- Added post_meta _encloseme -- Added post_meta _pingme -- Added post_meta _encloseme Processing post #2 ("サンプルページ") (post_type: page) -- 2 of 2 -- Sun, 04 Jan 2015 05:35:09 +0000 -- Imported post as post_id #2 -- Added post_meta _wp_page_template <p>All done. <a href="http://**********/wp-admin/">Have fun!</a></p><p>Remember to update the passwords and roles of imported users.</p> Success: Finished importing from ./wordpress.2015-01-04.0.xml file.
もし完全削除しておかないと、インポート時にこんなメッセージが出力されます。
Starting the import process... Processing post #1 ("(っ´∀`)っ ゃー") (post_type: post) -- 1 of 2 -- Sun, 04 Jan 2015 05:38:15 +0000 投稿 “(っ´∀`)っ ゃー” already exists.<br />-- Added terms (1) for taxonomy "category" -- Added post_meta _pingme -- Added post_meta _encloseme -- Added post_meta _pingme -- Added post_meta _encloseme Processing post #2 ("サンプルページ") (post_type: page) -- 2 of 2 -- Sun, 04 Jan 2015 05:38:15 +0000 固定ページ “サンプルページ” already exists.<br />-- Added post_meta _wp_page_template <p>All done. <a href="http://**********/wp-admin/">Have fun!</a></p><p>Remember to update the passwords and roles of imported users.</p> Success: Finished importing from ./wordpress.2015-01-04.0.xml file.
今回はまだ投稿と固定ページが1つずつだからよいようなものの、多数の投稿があると、ゴミ箱を全部確認するのは非常にしんどいです。もしインポートに成功してもブラウザで記事が表示されなければ、投稿がゴミ箱にあることを確認してください。また、wp post listで確認しても、リストに出てこないので要注意です。
もし誤ってゴミ箱送り→インポートしてしまった場合は、該当する投稿を「–force」で削除してからインポートすると復活させることができます。
ね、簡単でしょう?
![WordPressプロフェッショナル養成読本 [Webサイト運用の現場で役立つ知識が満載! ] (Software Design plus)](http://ecx.images-amazon.com/images/I/610lYz15VZL._SL160_.jpg)