もう迷わないCSV/XMLを利用したACFの記事一括インポートの決定版

このページは約8分で読み終わります

後で読む

  • このエントリーをはてなブックマークに追加

ACFを利用した環境へ記事の一括登録をしたい。

サイトのリニューアルをするにあたり、既存サイトの記事をCSVやXMLから一括登録したいケースが往々にしてあります。それも50や100ページぐらいならまだしも、1000や10,000ページとなると骨が折れます。

例えばこんな時

  • CSVやXMLからインポートをしたい
  • カスタムフィールドにそれぞれ一括登録したい
  • Advanced Custom Fieldsを利用している
  • マルチサイト先にインポートをしたい
  • カスタム投稿タイプにインポートをしたい
  • カスタムタクソノミーにインポートをしたい
  • インポート用にプログラムを書くのは嫌だ

インポートに困った

そんな願いに対し一発で解決できるプラグイン、それが「WP All Import」です。

WP All Importの公式サイト

無償版の「WP All Import」もあるのですが、Advanced Custom Fieldsに対応したインポートを行うには有料のアドオン($69)が必要となります。

ただ一度購入をすると、期限無制限でアップデート可、サイト数無制限で利用できるのでコスパはとてもいいです。

WP All ImportはACFの何に対応してる?

Advanced Custom Fieldsはそもそも大量のフィールドタイプがあります。 2018年8月現在のフィールドを基準に、WP All ImportのACF Addonは何に対応しているかそれぞれ確認をします。

まずは無償のAdvanced Custom Fieldsのフィールドから。

Text
Textarea
Range
Checkbox
Radio Button
Select
True / False
Button Group
Number
E-mail
Password
File
Image
oEmbed
WYSIWYG Editor
Color Picker
Date Picker
Date Time Picker
Google Map
Time Picker
Accordion
Clone
Group
Tab
Link
User
Page Link
Post Object
Relationship
Taxonomy

Advanced Custom Fieldsの有償アドオンの対応状況

Gallery
Repeater
Flexible Content
Options Page

ほぼほぼ全て必要なフィールドに対応しています。頼もしすぎる。

それ以外では以下のフィールドに対応しているようです。

  • Contact Form 7
  • Limiter
  • Location Map
  • PayPal Item
  • WP WYSIWYG (WP標準のWYSIWYGですね)
  • Gravity Forms

これらのフィールドに対し、予め作成されたCSV、XMLから一括インポートが行えます。その他無償のアドオンが様々提供されていて、国内で有名なもので挙げると「Yoast SEO」「WPML」などのインポートも対応しているようです。

WP All Importの使い方を知りたい

WP All Importはウィザード形式で進めることができ、難しい処理は不要でインポートを実施することができます。また嬉しいことに日本語対応している(そして所々機械翻訳を利用しているようで、壊れている)ので、読み進めるのも簡単です。

Step1 : 取り込みたいCSV/XMLファイルの選択をします

ファイルの選択には以下3つの方法があります。一度アップロード済みの場合、「既存のファイルを使用します」の選択もできますが、初回であれば「ファイルのアップロード」を選択します。

※インポート用のダミーcsvよろしければご利用ください。 (wp-all-import_samplefile.zip)

ファイルをアップロード、URLからダウンロード、既存のファイルを使用しますの選択

また「Upload Complete」が表示された後、アップロード先として投稿、固定ページ以外となる、カスタム投稿タイプ、タクソノミー、ユーザーへの選択もできます。

インポートしたい先の投稿を選択

Step2 : 読み込みされたCSVデータの確認

サンプルでは62件の記事データ(62行のcsv)があり、1つ1つ問題がないことをここで確認することができますが、表示崩れがなければそのまま「ステップ3に進みます」を押します。

インポートするテーブル行の確認

Step3 : マッピングの適用

ここが一番大切なステップですね。

デフォルトでは左カラムにはアコーディオンメニュー内にWordPressタイトルとWYSIWYGエリアが表示されています。右側にはCSVにより取り込んだフィールドと値が行になって並んでいます。

XML/CSVインポーターにおけるマッピング作業

例えば右側にある「title」という箇所にカーソルを合わせると、左側にドラッグをすることができます。あとはそれをどこに表示させたいか、マッピング作業をここでは行います。

WordPressタイトルの箇所にドラッグすると、自動的に「{title[1]}」のように挿入されます。ここは変数になるので、自動的に他の記事も同様の箇所に同様のルールで入ります。

blank

複合して入れることもできるので、dateをあわせてドラッグすると下記のようにすることもできます。便利ですね。

blank

またフィールドは必ずしも埋める必要はなく、必要になる箇所だけマッピングを行います。

今回はACFを登録していきたいので、「Advanced Custom Fieldsアドオン」を開きます。

Advanced Custom Fields アドオンの選択

すると既にACFで登録されているフィールドグループが表示されるので、該当の投稿/固定ページ/カスタム投稿タイプで呼び出しをしているフィールドグループを選択します。

ACFフィールドグループの選択

今回は予めACFで下記のような「meta」というフィールドグループを作成しています。

ACFで作成したWPの入力画面

すると、WP All Importで「meta」を呼び出しすると、同じフィールドが表示されます。

ACFアドオンの選択後の画面

右カラムより挿入させたいところにドラッグをします。画像の指定方法が気になるところですが、テキスト同様ドラッグで問題ありません。

該当のフィールドにマッピング

カスタムフィールドのマッピングが終わったら、続いて「その他 投稿のオプション」を開きます。

その他投稿のオプションを開く

ここでは、投稿に関する基本情報となる「公開ステータス」「公開日付」「投稿スラッグ」「投稿者」などの指定をすることができます。元の記事が公開済み、下書き、非公開などそれらの情報を引き継ぐこともできます。

その他投稿のオプションのマッピング作業

公開ステータスを引き継ぐには「XPathで設定」を選びます。

投稿ステータスのXPath

右カラムの「status」をドラッグします。

XPathにマッピング

同様に全て設定が終わったら、「ステップ4に進みます」を押します。

ステップ4に進みます

Step4 : インポート設定の保存

作成したインポートの設定をレコードとして保存を行います。

その際の識別子として「Unique Identifier」を入れるよう求められます。

Unique Identifierの登録

特に気にしなければ「自動検知」を押せば自動で挿入されます。

Unique Identifierの自動検知を割り当て

ここでは自動スケジューリングや、インポート設定のカスタマイズも行えますが、特に変更する必要はないので、そのまま「続行」を押します。

続行

Step5 : インポート前の最終確認

ここまでくるとあとはインポートの実行をするのみです。

「インポートの確認&実行」を押しましょう。

インポートの確認&実行

Step6 : インポート完了!

以下の画面が出たら無事終了です。

インポート完了!

表示の確認

実際にインポートされた記事の確認をします。

インポートされた投稿の記事

記事を開きます。

インポートされた記事内のACFフィールド

正常に

  • タイトル
  • パーマリンク
  • 公開ステータス
  • 公開日
  • カテゴリ(タクソノミー)
  • ACFの画像
  • ACFのWYSIWYG

に値が格納されていることが確認できます。

歓喜の顔

数が少ないとサクッとマッピングが終わり、インポートが行なえます。

一歩踏み込んだ使い方

既にある記事にインポートをしたい

既に登録済みの記事に対して、一部フィールドを新たに追加上書きをしたい場合もあるかと思います。その場合には以下の方法で行うことができます。

Step1にて、既存のアイテムを選択。

既存のアイテムを選択

Step3にて、タイトル、そして上書きしたいフィールドのみ登録。

Step4にて、下記のように更新するデータのみ選択をし、他のチェックボックスを解除します。

マージにおけるインポートを行う上での必要フィールド選択

こうすることで更新したい特定のフィールドのみ値を上書きすることができます。

エクスポートはどうしたら?

順番が逆ですが 笑

WordPressからWordPressに移行する場合、エクスポートをする上でいくつかのプラグイン選択肢があります。

ただ実は「WP All Import」の対になる「WP All Export」がきちんとあり、これもウィザード形式でとても使いやすいものになっています。

https://ja.wordpress.org/plugins/wp-all-export/

Pro版も一応あり、以下が可能になりますが記事やユーザーデータの自動バックアップを行わない限り、多くの場合不要と言えそうです。

  • DropboxやGoogle Driveなど外部サービスへのエクスポート
  • 自動スケジューリング
  • エクスポートファイルのフィルタリング
  • ユーザーデータのエクスポート
  • WooCommerceのデータエクスポート
  • カスタム関数の利用

とても便利なプラグインですのでお勧めです。

最後までお読み頂きありがとうございます!

  • このエントリーをはてなブックマークに追加
bitFlyer ビットコインを始めるなら安心・安全な取引所で