カスタムフィールドを含んだ記事/ウェブページのインポートや CSV/TSV (Tab Separated Values) からの記事/ウェブページ/カテゴリのインポートが可能になります。PowerCMS によって拡張された記事/ウェブページの情報もインポートが可能です。
この機能を利用すればサイト作成時の大量の初期データの作成や、テストデータの作成等の大幅な省力化が可能になります。
PowerCMS 形式のエクスポート/インポート
記事/ウェブページのカスタムフィールド、PowerCMS によって拡張された拡張フィールドやテンプレートセレクタに関する情報を引き継いでインポートが可能です。
各ブログの「インポート」画面で「インポート元」に「PowerCMS」を選択します。ファイルを選択して「記事をインポート」をクリックします。管理画面からファイルをアップロードする代わりに、 $MT_DIR/import
ディレクトリにインポートさせるファイルを置いても構いません。
CSV/TSV (Tab Separated Values) 形式のファイルからのインポート
Microsoft Excel 等のスプレッドシート・アプリケーションで作成したデータから CSV または TSV (Tab区切りテキスト) ファイルを作成して、そのデータを元に記事/ウェブページを生成することができます。
- CSV のインポートにはサーバーに Perl モジュール Text::CSV_XS もしくは Text::CSV が必要です。
- TSV のインポートに特別なモジュールは必要ありません。
1. インポートデータの作成
インポートデータでは、1行目に記事/ウェブページのフィールド名等、インポートしたデータの各セルをどこに保存するかについての情報を指定します。指定に関するルールは以下の通りです。
項目の種類 | 指定(例) | 解説 |
---|---|---|
記事/ウェブページのフィールド値 | entry_title | entry_フィールド名として指定します。entry_idを指定すると、そのIDの記事/ウェブページが存在した場合、その記事/ウェブページデータを上書きします。また、entry_blog_idを指定することで、複数ブログのデータを一括インポートすることが可能です。entry_class に「page」を指定すると、ウェブページとして保存されます。 |
記事/ウェブページのカスタムフィールド値 | customfield_basename | customfield_ベースネーム として指定します。 |
記事/ウェブページのカスタムフィールド(アイテム)値 | customfield_asset_basename | customfield_asset_ベースネーム として指定します。ここに登録する値は、サイトのルートパスを「%r」に置換したパスです。例: %r/path/to/file.jpgサーバーに該当するファイルがアップロードされていれば、アイテムへの登録は自動的に行います。ファイルが存在しない場合はこのフィールドはインポートされません。 |
PowerCMS の拡張フィールド値 | extfields_text_製品番号 | PowerCMS の拡張フィールドとして追加されたフィールドの値を extfields_フィールド種_ラベル名 形式で指定します。フィールド種が複数の選択肢を持つ場合(radio,select,cbgroup)はカンマで区切り、かつ選択されている値の前に「*」を付けます(チェックボックスの場合も同様)。また、フィールド種が file の場合、カスタムフィールドの「アイテム」と同様にサイトパスを「%r」に置換した値を入力します。 |
プライマリカテゴリ情報 | primary_category | 記事/ウェブページの主カテゴリ(プライマリカテゴリ)を指定します。 カテゴリが存在しなければインポート時に自動的に作成します。カテゴリの階層指定も可能です*。 |
カテゴリ情報 | category | 記事/ウェブページのカテゴリを指定します。この項目は複数指定可能です。カテゴリが存在しなければインポート時に自動的に作成します。 カテゴリの階層指定も可能です*。 |
タグ | tag | 記事/ウェブページのタグを指定します。1フィールドに指定できるタグは1つですが、この項目は複数指定することが可能です。 |
記事/ウェブページテンプレート | template_module_id | 記事/ウェブページテンプレート (「拡張フィールドとテンプレートセレクタ」を参照) の機能によって作成されたテンプレートモジュールの ID (テンプレートモジュールの編集画面の URL パラメータ id (&id=*) がこれにあたります) を指定します。指定する記事/ウェブページテンプレートはあらかじめ作成されていなければなりません。 |
カテゴリの階層を指定するには
primary_category または category フィールドに入力するカテゴリ名を最上位の階層から「_」(アンダースコアー) でつないで入力します。例えば「東京都」カテゴリのサブカテゴリ「千代田区」に属する記事の場合、「東京都_千代田区」と入力してください。
2. データのインポート
作成したデータの拡張子を CSV の場合は「.csv」TSV の場合は「.tsv」とします。
ウェブサイト/ブログの「インポート」画面で「インポート元」に「CSV or TSV (Tab Separated Values)」を選択、ファイルを選択して「記事をインポート」をクリックします。管理画面からファイルをアップロードする代わりに、$MT_DIR/import
ディレクトリにインポートさせるファイルを置いても構いません。
インポートした記事の投稿者 (Author) 情報について
基本的にはインポート作業を行ったユーザーの投稿した記事/ウェブページになりますが、投稿者に関する情報がファイルに指定されている場合 (entry_author_id) はファイル中の値が優先されます。
カテゴリ情報のインポート
Microsoft Excel 等のスプレッドシート・アプリケーションで作成したデータから CSV または TSV (Tab 区切りテキスト) ファイルを作成して、そのデータを元にカテゴリを生成することができます。この機能を利用することによって、階層を持ったカテゴリの作成や basename (出力ファイル/フォルダ名)を指定したカテゴリの作成が可能になります。
1. インポートデータの作成
インポートデータでは、1行目にカテゴリのフィールド名等、インポートしたデータの各セルをどこに保存するかについての情報を指定します。指定に関するルールは以下の通りです。
項目の種類 | 指定(例) | 解説 |
---|---|---|
カテゴリのフィールド値 | category_label* category_labelは必須 | 「category_フィールド名」として指定します。また、category_blog_id を指定することで、複数ブログのデータを一括インポートすることが可能です。category_class に「folder」を指定すると、フォルダとして保存されます。 カテゴリの階層指定も可能です*。 |
記事/ウェブページのカスタムフィールド値 | customfield_basename | 「customfield_ベースネーム」として指定します。 |
※ カテゴリのインポートデータの1番目のセルは必ず「category_label」である必要があります。
カテゴリの階層を指定するには
category_label フィールドに入力するカテゴリ名を最上位の階層から「_」(アンダースコア) でつないで入力します。例えば、「東京都」カテゴリのサブカテゴリ「千代田区」に属する記事の場合、「東京都_千代田区」と入力してください。
2. データのインポート
作成したデータの拡張子を CSV の場合は .csv、TSV の場合は .tsv とします。
各ブログの「インポート」画面で「インポート元」に「カテゴリー/フォルダ(CSVまたはTSV)」を選択、ファイルを選択して「記事をインポート」をクリックします。管理画面からファイルをアップロードする代わりに、 $MT_DIR/import
ディレクトリにインポートさせるファイルを置いても構いません。
※ 所有者とブログ ID についてはファイル中の値が優先されます。