このページはJavaScriptを使用しています。JavaScriptを有効にして対応ブラウザでご覧下さい。

DOCUMENTSドキュメント

CSVDataImExporter

主な機能

  • CSV形式でMovable Typeのコンテンツデータ・記事・ウェブページデータのエクスポート・インポートが可能です。
  • インポート時のデータ更新は、コンテンツデータID/記事IDによる指定の他、ラベルや出力ファイル名による指定が可能です。これにより、常にインポートだけを行なう運用が可能です。
  • 記事・ウェブページは一覧画面から選択してのエクスポートが可能です。
  • 記事・ウェブページは、カテゴリ・フォルダ・関連アイテム・カスタムフィールドに対応します(グレードによって対応機能が異なります)。
  • Movable Typeクラウド版に対応(4_00以降)。
  • Movable Typeコンテンツデータに対応(5_00以降)。
  • Mac Excelにも対応(5_12以降)。

動作確認環境

  • Movable Type 8.x /9.x
  • OS:Linux(CentOS)/Windows 11
  • Perl:5.8.8以上
  • 表計算ツール:Microsoft Excel 2010/Microsoft Excel 2000/OpenOffice Calc/LibreOffice Calc

インストール

ダウンロードアーカイブを展開した中にある「CSVDataImExporter」フォルダをMovable Typeのpluginsディレクトリにアップロードします。アップロード後、システム管理画面の「ツール」→「プラグイン」で「CSVDataImExporter」が表示されていればインストール完了です。

使い方

CSVデータのエクスポート

エクスポートはサイト管理者以上の権限が必要です。

機能拡張版では権限によってインポート・エクスポートのリンクが表示されない場合があります。

コンテンツデータの場合、左メニューのコンテンツデータ名をクリックし、一覧画面上部「〜をエクスポート」をクリック。

エクスポート画面が表示されます。

記事・ウェブページの場合、左メニューの「記事」→「CSVデータのエクスポート」をクリック。

エクスポート画面が表示されます。

CSVデータのインポート

インポートはサイト管理者以上の権限が必要です。

機能拡張版では権限によってインポート・エクスポートのリンクが表示されない場合があります。

コンテンツデータの場合、左メニューのコンテンツデータ名をクリックし、一覧画面上部「〜をインポート」をクリック。

インポート画面が表示されます。

出力ファイル名は下記フォーマットの「identifier」を指します。

CSVに列指定なしの場合に初期値を適用するフィールドは下記のとおりです。

  • テキスト
  • テキスト(複数行)ブロックエディタを除く
  • 数値
  • URL
  • 日付と時刻
  • 日付
  • 時刻
  • セレクトボックス(選択されている項目を初期値として適用)
  • ラジオボタン(選択されている項目を初期値として適用)
  • チェックボックス(選択されている項目を初期値として適用)
  • 埋め込みテキスト
  • タグ

記事・ウェブページの場合、左メニューの「記事」→「インポート」をクリックしたあと、「インポート元」のプルダウンから「CSV形式」を選択すれば、インポート画面が表示されます。

各種設定

下記の設定は、システム管理画面またはサイト管理画面の「設定」→「プラグイン」→「CSVDataImExporter」→「設定」で設定できます。

クラウド/非クラウド

AWSなどのクラウド環境でプラグインをご利用の場合、「利用環境」で「クラウド環境」を選択してください(デフォルトは「非クラウド環境」)。

CSVファイルの文字コード

エクスポート・インポートの文字コードを「CSVファイルの文字コード」で選択できます(デフォルトは「Shift_JIS(CP932)」)。UTF-8選択時、BOM有無を設定できます。

改行コード

インポートの改行コードを「改行コード」で選択できます(デフォルトは「CR+LF」)。

5.45または6.17までのバージョンでLFを指定したい場合は、「CR+LF」を選択してください。

アップロードしたアセットの移動

アップロードしたアセットの移動する・移動しないを選択できます(デフォルトは「移動する」)。

ファイル自体のアップロード機能はありません。コンテンツデータのアセットアップロードについてはアセットアップロード版で対応可能です。

日本語ファイル名のURIエンコード

CSVにフルパスで記載した場合の日本語ファイル名のURLのみ、URIエンコードして登録します(デフォルトは「エンコードしない」)。

例:画像アセットを"/var/www/html/mt/image/テスト123.png"で設定し、CSVファイルをインポート

  • アセット編集画面の「名前」:テスト123.png
  • アセット編集画面の「ファイル名」:テスト123.png
  • アセット編集画面の「アセットの埋め込み」:https://user-domain/mt/images/%E3%83%86%E3%82%B9%E3%83%88123.png

セレクトボックス/チェックボックス/ラジオボタンのデータ

セレクトボックス/チェックボックス/ラジオボタンのデータについて、ラベル・値のどちらを利用するかを「セレクトボックス/チェックボックス/ラジオボタンのデータ」で選択できます(デフォルトは「値」)。

更新履歴の保存

更新履歴の保存する・しないを「更新履歴の保存」で選択できます(デフォルトは「保存しない」)。

ステータス「未公開(原稿)」のファイル削除

ステータス「未公開(原稿)」のファイル削除する・しないを「ステータス「未公開(原稿)」のファイル削除」で選択できます(デフォルトは「削除しない」)。

「削除する(MTのファイル削除機能を利用)」は、編集画面から「公開→未公開(原稿)」を実施した場合と同等のHTMLファイル削除ルートを実行します。プラグインのフックポイントも実行されます。 「削除する」は、前述のHTMLファイル削除ルートの機能を絞って、HTMLファイル削除とmt_fileinfoテーブルからのレコード削除のみを実施します。

MT7-R4901以前のバージョンでは「削除する(MTのファイル削除機能を利用)」を選択してください。

CSVデータのフォーマット(コンテンツデータ)

CSVデータのフォーマットは表の通りになります(v5.29以降)。

項目 1行目 2行目以降 備考
コンテンツタイプ content_type コンテンツタイプ名を設定 必須(列削除不可)
コンテンツデータID id コンテンツデータIDを半角数字で入力 必須(列削除不可)。上書き時はid値必須
データ識別ラベル label データ識別ラベルを設定 必須。ただし自動入力の場合は値不要。列削除不可
ユーザーID author_id 投稿者のユーザーIDを設定 必須(列削除不可)
出力ファイル名 identifier 出力ファイル名を設定 任意(列削除可)。新規で未設定の場合、自動生成。
公開日 authored_on 以下のいずれかのフォーマットを設定 YYYYMMDDHHMMSS 例:20140101235959 YYYY-MM-DDTHH:MM:SS.mmm 例:2014-01-01T23:59:59.000 YYYY-MM-DD HH:MM:SS 例:2014-01-01 23:59:59 YYYY/M/D H:MM 例:2014/1/1 23:59 YYYY.M.D H:MM 例:2014.1.1 23:59 任意(列削除可)
更新日 modified_on フォーマットは公開日と同じ 任意(列削除可)
公開終了日 unpublished_on フォーマットは公開日と同じ 任意(列削除可)
ステータス status 下書き:1 公開:2 指定日:4 公開終了:6 必須(列削除不可)
コンテンツフィールド コンテンツフィールドの名前 コンテンツフィールドデータを設定 詳細は評価版でエクスポートしてみてください

インポートが不要なコンテンツフィールドはCSVから列削除が可能です(元の値が残ります)。
何らかの値が入っているコンテンツフィールドに対し空の値をインポートすると、元のデータは空の値で上書きされます。

コンテンツフィールド「アセット(オーディオ・ビデオ・画像含む)」のフォーマット

CSVに設定するアセットのフォーマットは次のいずれかになります。赤色部分がデータ部分になります。

  • パターン1 ※エクスポート時はこのフォーマットになります
    アセット名(アセットID)
  • パターン2 未登録のアセットを関連付ける場合
    アセットのパス(ルートディレクトリからのフルパス)とファイル名
    例:/home/user-name/www/sample.jpg
  • パターン3 アセットアップロード版で未登録のアセットを関連付ける場合
    アセットのパス(サイトパスからのパス)とファイル名
    例:assets/2025/09/sample.jpg

パターン2の場合、ファイルはMTと同じサーバに予めアップロードしてください(ファイルのアップロード機能はありません)。

パターン3の場合、ファイルはCSVファイルと同じフォルダに「ASSET_DIR」を作成し、その配下に同梱してZIP形式にしてください(アセットアップロード版)。

アセットをパターン2のフォーマットで指定した後で上書きインポートを行う場合は、パターン2のフォーマットでインポートしたあと、パターン1(アセットIDはエクスポートしたCSVで確認)でインポートしてください。パターン2のフォーマットで複数回インポートを行うと、異なるアセットとして登録されます。

パターン2でアップロードする場合、ファイル名の重複がないようにしてください。

ブロックエディタ(コンテンツフィールド「テキスト(複数行)」の「ブロックエディタ」)のフォーマット

種類 見出し テキスト 埋め込みコード 水平線 画像
キー
type heading text embed horizon image
order
html
value
("[]"固定)
options
("[]"固定)

("[]"固定)
elm
align
alt
caption
title
width
asset_id
asset_url

各項目の意味

  • キー:1つのコンテンツデータ内で重複しない半角英数文字を指定
    • type:ブロックの種類(heading:見出し/text:テキスト/embed:埋め込みコード/horizon:水平線/image:画像)
    • order:ブロックエディタ内で重複しない半角数字を指定(指定順に表示)
    • html:ブロックのHTML
    • value:ブロックの値
    • options:オプション(値は配下の項目で指定)
      • elm:ヘッダの要素
      • align:画像のアライメント
      • alt:画像の代替テキスト
      • caption:画像のキャプション
      • title:画像のタイトル
      • width:画像の幅
      • asset_id:アセットID
      • asset_url:アセットのURL

注意事項

  • YAMLフォーマットに違反した場合、エラーメッセージを表示し、処理を中断または該当フィールドのインポートをスキップします。エラーの原因やエラーメッセージの内容についてはお客様にて解析願います
  • 画像のアップロードには対応していません。アセットのID、URLを設定してください
  • 画像のID・URLは必須です
  • 画像のIDおよびURLに一致するアセットを事前に用意してください。誤ったIDおよびURLのチェックは行いません。誤っていた場合、インポート後の動作保証は致しません
  • 上記のデフォルト設定以外のブロックデータについては改修が必要です(有償)

エクスポートデータのサンプル(コンテンツデータ)

content_type,id,label,author_id,identifier,authored_on,modified_on,unpublished_on,status,テキスト,テキスト(複数行)_convert_breaks,テキスト(複数行),数値,URL,日付と時刻,日付,時刻,セレクトボックス,ラジオボタン,チェックボックス,カテゴリ,埋め込みテキスト,コンテンツタイプ,画像
商品,1,test1,2,d2cc8562de18dfb00db091082ede6fccb716b354,2019-01-07 22:08:00,2019-01-14 18:25:56,,2,test1,0,aaa,,,,,,,,,,,,
商品,2,test2,2,676bddac8af2db3d4471fff68238a1c2aeb83adc,2019-01-12 01:57:30,2019-07-22 23:33:07,,2,test2,__default__,かきくけこ,3000,https://www.facebook.com/,2019-07-01 12:34:56,2019-07-10,11:22:33,1,1,3,"cat1(4:cat1),cat2(3:cat2),cat3(2:cat3)",,"Site Page:003,Site Page:002,Site Page:001",default-userpic-90.jpg(8)
商品,3,test1,2,bc00015e96ee0bfee0600e0ebf6b5fc398778768,2019-01-14 19:01:15,2019-07-22 23:31:08,,2,test1,richtext,

あいうえお

,1000,https://www.koikikukan.com/,2019-07-22 00:00:00,2019-07-31,12:34:56,1,2,"1,2",cat2(3:cat2),,Site Page:002,bug-pbmt-white.png(7)

エクスポートデータのサンプル(ブロックエディタ部分)

17c93789c711180:
    type: text
    order: 1
    value: |
        

テキスト

html: |

テキスト

17c937875d423a8: type: heading order: 2 options: elm: h1 value: ヘッダ html:

ヘッダ

注意事項

  • CSVデータで、classとidの出現順序が間違ったフォーマットでインポートするとインポートエラーになります。
  • 大量のデータをインポート・エクスポートする場合、サーバ環境・性能によって処理が正常に終了しない場合があります(評価版で事前にご確認ください)。
  • 3rd Party製プラグインでカスタムフィールドを拡張し、そのフィールドの処理が正常に行えない場合、別途改修する必要があります。

更新履歴

  • MT9対応
INFORMATION