WordPressの投稿や固定ページをCSVファイルからインポートする
CSVファイルに入力した投稿や固定ページをインポートしたい場合、CSV Importerなどのプラグインを使う方法があります。
箇条書きしたタイトルをまとめて下書き投稿(または固定ページ)としてインポートする使い方もでき、アイデアを箇条書きで整理しておけば、迅速にサイトのたたき台を作ることもできます。
以下、CSV Importerプラグインを使ってCSVファイルをインポートする方法を紹介します。
まず、「プラグイン」‐「新規追加」メニューからCSV Importerをインストール、有効化します。
インストールの完了後、インポートするCSVのサンプルがwp-content\plugins\csv-importer\examplesディレクトリに作成されるので、このサンプルCSVファイルをExcelやテキストエディタで開いて編集するのが便利です。
※Excelで作成したCSVファイルの文字コードは一般的にはShift-JISですが、インポートがうまくいかないので、Excelでの編集後はCSVファイル(Shift-JISのファイル)をメモ帳などで開いて文字コードをUTF-8で保存してください。
sample.csvは次のような内容です。
これを編集すればCSVに入力した内容を投稿や固定ページでインポートすることができます。各列は次の用途で使われています。
- csv_post_title --- タイトル
- csv_post_post --- 本文
- csv_post_type --- 投稿タイプ(投稿 → post/固定ページ → page)
- csv_post_excerpt --- 抜粋
- csv_post_categories --- カテゴリ
- csv_post_tags --- タグ
- csv_post_date --- 投稿日時
どの列も入力を省略することができます。その場合、投稿日時には現在の日時が設定されるなど、デフォルトの値が入力されますが、すべての列を空にするとインポートされません。
タイトルも省略できますが、(タイトルなし)のような投稿が作成されて、投稿を管理しづらくなるので、タイトルは入力しておきましょう。
サンプルCSVをインポートして動作テスト
「ツール」‐「CSV Importer」メニューを開いて、試しにサンプルCSV「sample.csv」をインポートしてみます。
取り込むカテゴリとインポートするファイルを選択して「import」ボタンをクリックすると、CSVファイルから投稿や固定ページが作成されます。
このとき、「Import posts as drafts」をチェックすると下書きとして保存することができます。
※カテゴリの使い方は少しややこしいので、こちらをご覧ください(カテゴリについて)。
インポートが完了すると、メッセージが表示されます。
投稿一覧を見ると、CSVファイルのデータから下書きの投稿が作成されています。
固定ページも下書きで作成されています。
箇条書きした投稿タイトルを一括でインポートする
インポートするCSVファイルの各列は省略できます。それを活用して、CSVファイルに投稿タイトルのみを箇条書きしておき、一括でインポートしてみます。
CSVファイルの先頭行にある見出しはcsv_post_titleのみを残し(sample.csvのままでも大丈夫です)、2行目以降にサイトで書きたい内容を箇条書きでまとめます。
※文字コードはUTF-8で保存します。
「ツール」-「CSV Importer」メニューから、このCSVファイルをインポートします。インポートの完了後に投稿一覧を見ると、空の投稿が作成されています。カテゴリなどはデフォルト設定、投稿日時はインポート時の日時が設定されます。
インポート先のカテゴリについて
「ツール」-「CSV Importer」メニューで選択するカテゴリは、少しややこしいのですが、CSVファイルで入力されたカテゴリを、ここで選択したカテゴリの子カテゴリとして作成するという意味です。選択したカテゴリの投稿としてインポートするという意味ではありません。
CSVファイルにカテゴリを入力しなかったときは、ここで選択したカテゴリの投稿になるのではなく、サイトのデフォルトカテゴリ(例:未分類)の投稿としてインポートされます。
CSVファイルでカテゴリを入力せずに既存のカテゴリの投稿としてインポートしたい場合は、「設定」-「投稿」メニューの「投稿用カテゴリーの初期設定」で、インポート先のカテゴリを選択しておく方法があります。つまり、一時的に投稿のデフォルトカテゴリを変更しておくということです。
これにより、カテゴリを省略した投稿は、デフォルトカテゴリに変更したカテゴリの投稿(つまりインポートしたいカテゴリ)として作成されます。