カスタムフィールドを含む記事レコードの一括インポート

たとえば、大量の商品情報があってそれを全部サイトに掲載したい、というような場合、これらの商品情報をどうやって新サイトに移行するかが鍵になります。
今回はその方法のご紹介。
商品情報の項目はカスタムフィールドで管理します。
したがって、アドバンストカスタムフィールドをインストールしておきます。
- とにもかくにも、商品データのCSVが必要です。
クライアントにエクセルデータへの打ち込みをお願いしましょう。制作の出番はそれからです - エクセル表を作ってもらう過程で、フォーマットは決まっているはずです(後から追加があっても大丈夫)。
決まったら、コンテンツ、カスタムフィールドなどを使って、そのエクセルデータの項目のフォーマットをWordPressで再現するための設計をします。
WordPressインポートにあたっては必須のカラムがありますので、それを差し込んだエクセル表にします。
下にエクセルのフォーマット例(CSVにしたもの)を記述します。
"post_id","post_name","post_title","post_author","post_date","post_type","post_status",カスタムタクソノミー「プロジェクト種別」,カスタムタクソノミー「プロジェクト地域」,カスタムフィールド「概要説明」,カスタムフィールド「期間」,カスタムフィールド「予算」,・・・
- このフォーマットでは”post_id”,”post_name”,”post_title”,”post_author”,”post_date”,”post_type”,”post_status”が必須項目にあたり、それぞれ、「投稿ID」、「スラッグ」、「タイトル」、「作成者」、「日付」、「投稿タイプ」、「ステータス(公開か非公開か等)」を意味します。
カスタムタクソノミーの項には「’tax_’+スラッグ名」を記入します。 - 設計で決まったカスタムフィールドについて、上述したアドバンストカスタムフィールドを使って構築します
- アドバンストカスタムフィールドで構築したカスタムフィールドには、実は一意のIDが付与されています。
フィールドグループ編集画面の表示オプションを開き、「Field Keys」にチェックを入れると、そのIDが確認できます。
エクセルデータの項目名をそのIDと置き換えます。 - エクセルデータをCSV出力(ダブルコーテーションで囲う設定必須)、UTF8変換をします。最終的にできあがるCSVフォーマット例は以下のようになります。
"post_id","post_name","post_title","post_author","post_date","post_type","post_status","tax_projects_cat","tax_projects_area","field_XXXXXX","field_XXXXXX","field_XXXXXX",・・・
- プラグイン「Really Simple CSV Importer」をインストール、有効化します。
- ツール -> インポート -> CSV を開いて、CSVをアップロードしてインポートを実行します。
いかがですか?
一括で移行できましたか?