先日は、SIRIUSからWordPressに引っ越すときに、
「MTエクスポート」という昨日をつかって一括登録しましたが、
元々1ページにずらーっと項目を並べた書き方だったので、
それぞれを個別のページに分けたいなと思っていました。
WordPressは、分類ごとに表示させるのが簡単なので
ずらっと並べるよりは、分類や検索で必要な部分だけ表示させた方が
いいかなと思ったので。
ひとつひとつ記事を切り貼りして新しくページをつくってもいいけれど、
CSV「Really Simple CSV Importer」というのを知って、
CSV形式でのインポートでやり直してみようと思いました。
以下「Really Simple CSV Importer」の使い方
いつものようにインストール。
ツールの下の「インポート」をクリックすると、
インポート画面に「CSV」という項目が追加されているので、
「インポーターの実行を」クリック。
この画面で作成したCSVファイルを選択して、
下の「ファイルをアップロードしてインポート」
という青いボタンをクリックするだけ。
CSV形式に直すのは、結局は記事を切りとって貼りつける作業が必要ですが、
WordPressに取り込むのはほんと一瞬。
ページごとにポチポチ設定しなくていいので少しは作業が軽減される気がします。
投稿記事にするか固定ページにするかも選べるし、
カテゴリや、ステータスなんかも設定できて便利です。
まだ全部の項目は使いこなせていないけれど、
必須の入力項目は、投稿か固定ページかを示す、「post_type」だけみたい。
(追記:「post_title」と「post_content」も未入力だと、読み込みエラーになりました。
まぁ、普通入れますが。
)
今回使った項目は、下記7項目だけ。
項目の記載は特にどんな順番でも問題ないみたい。
post_type (必須) |
‘post’:「投稿」or ‘page’:「固定ページ」 |
post_title | 投稿タイトル |
post_status | ‘draft’:「下書き」 or ‘publish’:「公開済み」or ‘pending’:「レビュー待ち」or ‘future’:「予約済み」or ‘private’:「非公開」 |
post_name | 投稿スラッグ(※) |
post_category | カテゴリ名(カンマ区切りで複数指定可) |
post_tags | タグ名(カンマ区切りで複数指定可) |
post_content | 本文 |
※投稿スラッグ: URLとして表示される。通常半角小文字で、英数字とハイフンのみ
予約投稿にする場合は、「post_status」を‘future’にして、
「post_date」で未来の公開日を指定するらしい。
やってみると、「post_date」は、’2017-02-28 23:59’といった
日時形式でも、’2017/02/28’といった時間なしのかたちでも
問題なく読み込めました。
時間なしの場合は公開予定日時欄の時間は、自動的に00:00になっています。
ちなみに、「post_status」を‘future’にして、未来ではなく、
過去の日付を入れてみたところ、記事は読み込まれませんでした。
(設定できる項目は下記)
csvファイルさえつくってしまえば、
「Really Simple CSV Importer」は本当に簡単に使えるのがわかったけど、
ひとつ注意点があるとしたら、Excelで作成したcsvではうまくいかないということですね。
Excelで作成したcsvをそのまま読み込もうとすると、こんな感じのメッセージが出て、
「すべて完了しました。」とはなるものの、記事が登録できませんでした。
MT形式でもそうでしたが、やっぱり文字コードはUTF-8にする必要があります。
Googleスプレッドシートは、Excelのように拡大縮小ができないようなので、
編集しづらいなと思って、Excelで作ってから
「ツール」→「Webオプション」→「エンコード」で、「保存する形式」を
「UTF-8」にして保存してみたのですが、私の使っているExcelが古いためか、
うまくいかず、結局Googleスプレッドシートで編集して保存したものを読み込みました。
Googleスプレッドシートでは、もともと文字コードがUTF-8なので、
その点何も考える必要がなく、安心です。
ただ、マウス操作でに拡大縮小できないのがちょっと不便な感じ。
以下、「Really Simple CSV Importer」の作成者の方のサイトから引用。
利用可能なカラム名と値:
ID
orpost_id
: (数値) 投稿ID。
既存の記事を更新したい場合に使います。投稿IDがあなたのブログに存在している場合は、インポーターは投稿データを更新します。存在していない場合は、新しいポストを指定された投稿IDで作成します。post_author
: (ログイン名 または ID) 投稿者のユーザー名またはユーザーID数値。post_date
: (文字列) 公開日の時間指定。post_content
: (文字列) 投稿の本文。post_title
: (文字列) 投稿のタイトル。post_excerpt
: (文字列) 投稿の抜粋。post_status
: (‘draft’ または ‘publish’または ‘pending’または ‘future’または ‘private’またはカスタムステータス) 投稿ステータス。’draft’がデフォルトです。Codexの投稿ステータスページpost_name
: (文字列) 投稿のスラッグ。post_parent
: (数値) 投稿の親ID。階層構造を持つ投稿タイプの場合に使います。menu_order
: (数値) 並び順。post_type
: (‘post’ or ‘page’ or any other post type name) (必須) 投稿タイプスラッグ。ラベルではありません。post_thumbnail
: (文字列) 投稿サムネイル(アイキャッチ画像)のURI、またはパス。post_category
: (文字列、カンマ区切り) 投稿カテゴリーをスラッグで指定post_tags
: (文字列、カンマ区切り) 投稿タグを名前で指定tax_{taxonomy}
: (文字列、カンマ区切り) 接頭辞tax_
で始まるフィールドは、カスタムタクソノミーとして使われます。タクソノミーはすでに登録済みである必要があります。入力値はタームの名前、またはスラッグです。{custom_field_key}
: (文字列) その他のカラムのラベルはすべてカスタムフィールドとして扱われます。cfs_{field_name}
: (文字列) Custom Field Suiteプラグインで設定されたカスタムフィールドにインポートしたい場合は、接頭辞cfs_
を追加してください。注意:CSVファイル内のセルは「値の維持」を意味し、「削除」ではありません。
注意:ページのページテンプレートを指定したい場合は、カスタムフィールドのキーで_wp_page_template
を指定してください。
注意:投稿ステータスで ‘future’(予約済み)を指定する場合は、post_data を指定することでWordPressにいつ投稿を公開すべきかを指示する必要があります。
参考サイト
「Really Simple CSV Importer」作成者の方のサイト
使用例