csv2newpageプラグインについて

Last-modified: Tue, 19 Feb 2019 09:48:19 JST (34d)

概要

あらかじめ用意したテンプレートページを利用して、csvデータをアップロードして一括でWikiページを作成します。

使い方

テンプレートの用意

このプラグインではテンプレートにtrackerプラグインの設定を用います。最低限必要となるテンプレート設定は以下の2文書です。

  • ページテンプレート
    :config/plugin/tracker/設定名/page
  • フィールド定義
    :config/plugin/tracker/設定名

※trackerプラグインの定義ファイルは、https:// WikiのURL/index.php?cmd=config_listから一括で作成することも可能です。
※trackerプラグインの詳細についてはtracker.inc.phpをご覧ください。

アップロードページの用意

csvをアップロードするためのページを用意します。
新規ページを作成し、下記書式のプラグインを記述します。

#csv2newpage(設定名, upload, 1, _page, フィールド名1, フィールド名2, ...)

【設定名】trackerプラグインの設定名をセットします。
【upload】アップロードフォームを表示する場合はそのままuploadと記述します。
【データ開始行指定】1行目が見出しの場合など、無視する先頭行数を指定します。
【_page】csvファイルの1カラム目をページ名とする場合は_pageと記述します。この記述がない場合はページ名は単純連番となります。
【フィールド名】ページテンプレートで使用するフィールド名を、CSVの先頭から当てはめて記載します。

使用例

設定名を「csvtest」とします。

サンプルCSV

今回使用するサンプルのCSVです sample.csv
文字化けが発生する場合は文字コードをUTF-8で保存してお試しください。

ページ名,製品名,モデル名,販売価格,担当者,電話番号
亜ページ,オレンジPC,3H0123P,100000,担当A,03-1111-xxxx
依ページ,パイナップルPC,3H0124P,100000,担当B,03-2222-xxxx
宇ページ,愛媛みかんPC,3H0125P,100000,担当C,03-3333-xxxx
絵ページ,ごーやPC,3H0126P,100000,担当D,03-4444-xxxx

ページテンプレートの設定例

:config/plugin/tracker/csvtest/page

* [product]
-モデル: [model]
-販売価格: [price]
-担当者: [name]
-電話番号: [phone]
----

フィールド定義の設定例

:config/plugin/tracker/csvtest

* fields
|項目名|見出し|形式|オプション|デフォルト値|h
|product|製品名|text|||
|model|モデル|text|||
|price|価格|text|||
|name|担当者|text|||
|phone|電話番号|text|||

アップロードページの例

CSVアップ

#csv2newpage(csvtest, upload, 1, _page, product, model, price, name, phone)

実行

アップロードページにアクセスして、サンプルのCSVをアップロードします。
正しく実行されれば、下記の4ページが作成されます。

プラグインについて

このプラグインは以下のページに掲載されたcsv2newpageプラグインを使用しております。
csv2newpage.inc.php