先日いただいたお仕事の中に、WordPressのカスタム投稿を、CSVファイルからインポートを行い、データを読み込むというものがありました。
WordPressにCSVをインポートするために使用したのは『Really Simple CSV Importer』というプラグインです。
さっそくサンプルのCSVファイルの作成を行い、インポートを試みましたが、一向にうまくいきませんでした。
私は解決するために膨大な時間を費やしてしまったので、その時の解決策をシェアしたいと思います!
本記事では、CSVファイルの作成に、MacOSに標準搭載されている表計算ソフトNumbersとテキストエディタを使用しております。
WindowsOSをご利用の方は、WindowsOSに標準搭載されているメモ帳や、Excel、Googleスプレッドシート等、環境に合わせてご使用ください。
CSVファイルとは??
CSVは、Comma Separated Value の略だよ。
Comma は「カンマ」Separated は「区切った」Value は「値」のことだよ。
CSVファイルとは、値をカンマで区切ったファイルのことです。
拡張子は .csv です。
CSVファイルはテキストデータなので、OSに標準搭載されているテキストエディタやメモ帳で開くことができ、環境を選ばずに使うことができるファイルです。
また、余計な情報がないので、容量がとても軽いです。
『Really Simple CSV Importer』とは??
『Really Simple CSV Importer』は、CSVファイルを使用して簡単に投稿のインポートを行う、WordPressのプラグインです。プラグイン自体は、長期間更新されていませんが、動作に問題なく使うことができました。
投稿の内容はもちろん、カテゴリ、公開の時間指定、タグやサムネイルなど、幅広くサポートしています。
カラム名は規定のものがありますので、ご自分の作成したいデータに合わせて、公式サイトでご確認ください。
『Really Simple CSV Importer』CSVファイルの作り方
CSVファイルの作成は、Numbersを使用
CSVファイルを作成する際は、表計算ソフトが便利です。
本記事ではMacOSに標準搭載されているNumbersを使用して、CSVファイルの作成方法を紹介します。
『Really Simple CSV Importer』を使用してWordPressにインポートする場合、
[post_type]=投稿タイプ
[post_status]=投稿ステータス
[post_name]=スラッグ名
は必ず必要です!
必要データ以降は、投稿やカスタム投稿にインポートしたいデータに合わせて、適宜調整します。
NumbersからCSVで書き出す
Numbersの [ファイル] から [書き出す] を選択し、[csv] を選択します。
テキストを [Unicode(UTF-8)] を選択、[保存] をクリックします。
※『Really Simple CSV Importer』ではテキストはUTF-8と指定されています。
保存場所を指定し [書き出し] をクリックします。
CSVファイルを確認する
書き出したCSVファイルをクリックしてそのまま開くと、またNumbersで表の形で開いちゃうよ。何度もそのままCSVファイルを開いちゃって、まいっちゃったよ^^;
テキストエディットを起動し、作成したCSVファイルを開きます。
CSVファイルはカンマで区切られたファイルですが、Numbersを使用して書きだしたCSVファイルはカンマではなくセミコロンで区切られています。
セミコロンをカンマに修正
CSVファイルとして扱うためには、セミコロンをカンマに修正する必要があります。
テキストエディットの [編集] から [検索]、[検索と置換] を選択します。
検索BOXに「; (セミコロン)」置換BOXに「,(カンマ)」を入力して、[すべて] をクリックします。
すると、「;」が「,」に置き換わります。
各行の最後の部分のカンマがぬけているので、そこは手動でひとつずつ「,(カンマ)」をつけてください。
「,(カンマ)」をつけたい部分の最後の文字等が一緒の場合は、上記と同じように検索と置換を利用してカンマをつけることも可能です。
『Really Simple CSV Importer』はダブルクォーテーションが必要!
さらに、ここからがポイント!!!!!!
『Really Simple CSV Importer』はカンマ区切りだけではなく、ひとつひとつの値に「”(ダブルクォーテーション)」が必要です。
「”(ダブルクォーテーション)」を値に付ける方法は、上記と同じように検索と置換を使います。
検索BOXに「;(セミコロン)」置き換えBOXに「”,”(ダブルクォーテーション・カンマ・ダブルクォーテーション)」を入力して [すべて] をクリックします。
↓ セミコロンが 「”,”」に置き換わります。
↓ 各行の最初と最後にも必要な「,(カンマ)」や「”(ダブルクォーテーション)」を追加します。
それでもインポートできない時は??
上記の書き出し、カンマへの変更、ダブルクォーテーションを完了し、CSVファイルを完璧に作れた!と思い、インポートしても失敗してしまう時があります。
そんなときは、こちらも確認してみましょう!
ダブルクォーテーションの形の違い
半角のダブルクォーテーションには「”」「”」「“」があります。CSVファイルに必要なダブルクォーテーションは「”」の形です。
空白がないか
記号の前後に半角の空白が入ってしまい、インポートがうまくいかない時があります。
空白がないかチェックしましょう!
スペルチェック、項目チェック
[post_type]=投稿タイプ [post_status]=投稿ステータス [post_name]=スラッグ名 は必須項目です。
これらのスペルを間違えたり、抜けていたりするとうまくインポートされません。
まとめ
私は最初にCSVファイルを作成したときに必須項目が抜けており、インポートがうまくいきませんでした。
その後、代表の川角が作成しインポートができているCSVファイルを使用したものの、なぜか私の環境ではうまくインポートできず、何が原因か模索していたときに今回ご紹介した内容にたどり着きました。
☆ 拡張子は「.csv」になっている?
☆ 区切りは「,(カンマ)」になっている?
☆ 値は「”(ダブルクォーテーション)」で囲まれている?
☆ 文字や記号の間に無駄な空白が入っていない?
☆ 項目やスペルは正しく入力されている?
Really Simple CSV Importerを使用した、CSVファイルのインポートでお困りの方の参考になれば幸いです♪