エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CSV Importerで WordPressにcsvを取込む

      2015/06/15

CSV Importerで WordPressに csv投稿データを取り込む方法

 

CSV Importerとは

 
CSV Importerとは、CSV形式のファイルで WordPressに投稿データを取り込むためのプラグインです。
 
他のブログサイトから記事を移す場合や、WordPressを CMSとして利用している場合などは、商品情報や店舗情報などをまとめて取り込みたい、というニーズもあると思いますがそんな場合に利用するプラグインです。
 
 
CSVファイルを取り出す方法や CSVを取り出してまた WordPressに戻す方法については下記にも記事を書いていますので、あわせて参考にしてください。
 WordPress csvインポート、エクスポートのプラグイン
 Export to Textで WordPressを csv出力
 
 

CSV Importerのインストール方法

 
WordPressのプラグインのインストールの解説は「WordPressプラグインの3つのインストール方法解説」に記事を書いていますので参考にしてください。
 
 

CSV Importerの使い方

 
「csv importer」を利用すること自体は簡単です。
 
左メニューの「ツール」-「CSV Importer」をクリックすると下記の画面が表示されます。
 
20140423_wp_01
 
この画面で「参照…」ボタンで csvファイルを選択し、「Import」ボタンをクリックすることで csvファイルが WordPressに取り込まれます。
 
正常に登録されると下記のようにメッセージが表示されます。
 
20140423_wp_03
 
Import posts as drafts」にチェックを入れると「下書き」として取り込まれます。一旦下書きとして取り込み、確認したうえで公開、という手続きを踏みたい方はチェックを入れましょう。
 
Organize into category」は、親カテゴリを指定します。
CSVファイルの中に設定されているカテゴリがある場合は、指定されたカテゴリの子カテゴリとして登録されていきます。
また、既存のカテゴリと同じものがある場合は、そこにインポートされます。
 
 

CSV Importerを使うための項目とレイアウトの説明

 
csvで出力したものの一部のテキストを修正したり、バックアップしていたものから復元させる際に利用する場合は、上記のプラグインの使い方が理解できれば問題ありませんが、データを生成する場合は、プラグインの使い方ではなく、WordPressのレコードの持ち方、CSV Importerで取り込む CSVの項目の持ち方について理解しておく必要があります。
 
ここでは、その CSV Importerのレイアウトについての説明を行います。
 
csvファイルのサンプル
————————

————————
 
1行目がタイトルで、2行目以降がデータになります。
 
下記は、編集できる項目です。
(下記の項目の並びは、Export to Textで出力される並びに極力合わせています。)
 
csv_post_title:タイトル
csv_post_date:投稿日時
csv_post_type:投稿タイプ(post:投稿ページ。page:固定ページ)
csv_post_categories:カテゴリ
csv_post_tags:タグ
csv_ctax_タクソノミー名:カスタムタクソノミー。複数ある場合は「,(カンマ)」で区切る。
csv_post_slug:スラッグ
csv_post_post:本文
csv_post_excerpt:抜粋
csv_post_author:著作者
csv_post_parent:親ページID
 
+「カスタムフィールド」
 
 
「csv_」と付いている項目は、投稿、固定ページの最初から設定されている項目です。
 
加えて、csvファイルのサンプルにある「csv_」が付いていない「prefecture」「ward」「address」「access」「item」は、カスタムフィールドとして登録される項目です。
タイトル行に編集している項目名をカスタムフィールドの項目名として登録されます。
 
 
上記の項目は編集することができる項目名ですが、編集する必要がある項目だけを選んで csvファイルを作成すれば OKです。必要がない項目は指定する必要はありません。
例えば、「csv_post_title,csv_post_post」だけの csvファイルを作成することもでき、タイトルと本文のみを登録することができます。編集していない項目は、デフォルトの値が保存されます。
上記の csvファイルのサンプルもすべての項目を設定してはいませんが、全く問題はありません。
 
また、項目の順番も気にする必要はありません。タイトルと本文の順番は「csv_post_title,csv_post_post」でも「csv_post_post,csv_post_title」でも同じように登録されます。
 
システム上の必須の項目はありませんが、タイトルについては、なしで登録することは可能ですが、タイトルがない場合は何のデータか分からなくなります。プログラム上でエラーにはなりませんが、実際の運用上は必須項目と言えるでしょう。
また、すべての項目が空のレコードはインポートされません。
 
上記の通り CSV Importerで取り込む csvファイルを作る際はかなり柔軟な形で作ることが出来ます。
 
 
また、コメントについては、WordPressのオフィシャルサイトの CSV Importerの説明ページに Ver.0.3.1からインポートできるようになったと書いてありました。
ですが、現時点では詳しい情報の確認が出来ていませんので、確認が出来次第追記したいと思います。
 
 


 

実際に試してみるのが早いでしょう

 
この記事の説明を読めば難しい内容ではないことは伝わるとは思いますが、慣れは必要だと思いますので、何度か実験をしてみる方がいいでしょう。
実験をする際のテーブルは、本番のテーブルである必要はありませんので、テスト環境の WordPressを用意して、そこで何度か実験してみるのもいいでしょう。
 
また、本番環境に csvの取り込みをする際は、不具合があった場合などに元に戻す必要が出てくる可能性もありますので、事前に DBのバックアップを取っておく方がいいでしょう。
 
DBのバックアップに関しては、WP-DBManagerが役に立つと思いますので、まだ入れていない方はこちらもお試しください。
 「WordPress データベースを管理するための強い味方のプラグイン WP-DBMANAGER
 
2014.07.06 追記
バックアップに関しては、非常に有名なプラグイン「BackWPup」についての記事を「BackWPupでWordPressのDBもファイルもバックアップ」として 9記事にわたって書いていますので、あわせてそちらも参考にしてみてください。
 
 

CSVファイル加工についての説明

 
csvファイルをエクセルに貼り付ける場合、日付の項目や数値の項目がエクセルによって自動的に変換されてしまう場合がありますので注意しましょう。
 
私は、情報の加工はエクセルで行うこともありますが、テキストエディタでそのまま更新を行う場合もあります。
エクセルで表示するより見づらいことは確かなのですが、細かな修正をする場合はエクセルから csvファイルに出力する手間がないなどのメリットもあります。
 
ちなみに、テキストエディタ等で文字列を置換する場合、タブや行頭などを正規表現で表現して置換することもできます。その際の正規表現としては下記の様になりますので、参考までに。
 
 タブ:\t
 行頭:^ (アクサンシルコンフレックス、カレット)
 行末:$ (ドルマーク)
 
正規表現で置換する場合は、「\t(タブ)」を「”,”」に置換し、行頭、行末を「”」に置換(追加)することでタブ区切りの文字列を、区切り文字として「,」を、囲み文字を「”」にした csvファイルを生成することができます。
 
 

CSV Importerを利用する際に起こった不具合

 
私が実際に CSV Importerを使っている際に発生した不具合についてご紹介することで、CSV Importerを使う際に同じようなところで悩まずに済むんじゃないかと思います。
 
 
CSVファイルの容量が大きすぎる
 
PHPにはアップロードすることができるファイルサイズを設定する項目があります。
その設定は、サーバごとに違いますので、どのサイズまでは OKですとは言えませんが、サイズが大きなファイルをアップロードしようとするとエラーになる場合があります。
容量が大きい場合は、csvファイルを分割しするといいでしょう。CSV Importerは分割して取り込んでも先に取り込んでいたデータに影響を与えることはありません。
 
 
項目の大文字、小文字の違い
 
「csv_post_type」を大文字の「POST」と入力していたことで、下記の画像のように「Unknown post type “POST”.」というエラーが出ました。
しかし、インポート処理で小文字にして取り込まれるため、結果的には問題なく表示されます。
逆に言うと、エラーがある場合はエラーメッセージが出るものの取り込み処理は実行されます。
 
20140423_wp_04
 
 
データは取り込めているが表示されない
 
csvファイルでデータベースに情報は取り込めているのですが、表示がされないという不具合もありました。
 
これについては原因も解決方法も分からないままですが、対処療法としては、一度管理画面から表示されない投稿データを表示し、保存を実行することで表示されるようになりました。
しかも、この不具合は、投稿データの全件が同じような状況になるのではなく、一部の投稿データだけがそのような状況になっていたため、一件一件表示されているかどうかの確認が必要でした。
データが数百件という件数になると対応は非常に面倒なことになります。
 
 
カスタムフィールドのチェックボックスタイプの入力
 
カスタムフィールドのチェックボックスタイプの入力項目で、複数項目にチェックを入れている場合の登録方法が検証し切れていません。
これについては、不具合というよりは必要に迫られなかったために、実際にどのようにすれば登録できるのか検証していない、という状況です。
チェックボックスのフィールドであっても 1項目しかチェックを入れていない状況であれば、チェック項目の値を入れておけば問題なく取り込まれるのですが、複数にチェックを入れていた場合、どのようにして取り込めばいいかの確認がとれていません。
どのようにすればいいか、お分かりの方がいらっしゃればお教えいただけますと助かります。
 
 

リビジョンを削除し、データを軽くしよう

 
詳しくは「Export to Textで WordPressを csv出力」に書いていますが、リビジョンで不要なデータが多いと作業をする際、csvを取り込む際に余計な作業が増えてしまいますので、不要なレコードは削除しておきましょう。
 
また、リビジョンについては「Better Delete Revisionを使って WordPressのリビジョンを削除する方法」にまとめていますので、参考にしてください。

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

XAMPP環境で WP-DBMANAGERでの復元でDBが壊れる

XAMPP環境で WordPressの WP-DBMANAGERを利用して DBの復元をしたら DBが壊れた。

WordPressのパーマリンク設定の考え方

基本設定の一つであるパーマリンクの設定について解説。パーマリンクはURLを決定づける重要な項目ですので、設定の意味を理解して希望するURLになるよう設定しましょう。

Google Code Prettifyの設定方法を解説。 Syntax Highlighterから乗換え、高速化にも最適

Google Code Prettifyでソースコードをきれいに編集する方法の解説。簡単設置とカスタマイズ設置の2つの方法を解説し、カスタマイズするポイントも解説。

WP-PostRatingsでWordPressに自由度が高い口コミサイトを構築

口コミの評価点を投稿する機能に特化したプラグインで、多様なイメージと投稿方法が用意されていてサイトにあったイメージを選択できます。

Contact Form 7の使い方・引数で情報を受け渡す方法

Contact Form 7で引数の情報をフォームに編集する方法を解説します。

WordPressのメディアの設定解説・uploadsフォルダの変更方法

メディアの設定に関する解説。管理画面から変更できなくなったuploadsフォルダの変更方法についても解説。

WordPress投稿にPHPを記述するショートコードの使い方add_shortcode

WordPressの投稿ページで PHPの処理を行うには add_shortcode関数を使ったショートコードという機能を利用します。

Contact Form 7使い方詳細解説・WordPressメールフォーム

WordPressの標準お問い合わせメールフォームである Contact Form 7の詳細な使い方の解説です。

seesaaからWordPressに引越。インストールなど必要な全てを解説

seesaaブログからWordPressへの引越し解説。他のブログにはないseesaaブログからcanonicalとリダイレクトの設定方法を実装!

30分でWordPressを引越し・他のサーバに引越しや開発環境の構築手順

WordPressを他のサーバに引っ越しするとき、テスト環境を作るときなどの作業手順をまとめました。プラグインを使う方法もありますが手作業でも簡単です。