オープンソースの社内WikiであるGROWIにはプラグイン機能が用意されています。自社のデータを表示したり、表示をカスタマイズするのに利用できます。
今回は、GROWIプラグインの開発手順について解説します。まだ全体を把握できていないので、分かっている範囲ですが、開発時の参考にしてください。
プラグインの種類
GROWIのプラグインには、以下の3種類があります。
- script
- theme
- template
今回はスクリプト(template)を対象として紹介します。
注意点
GROWIでは、日報や議事録など同じフォルダ内で繰り返し使えるページテンプレート機能もあります。この記事で取り上げるテンプレートは、任意のページで作成できる使えるテンプレート、かつオンラインに公開して共有できるプラグインになります。
テンプレート
プラグイン作成に使えるテンプレートを作成しました。こちらをベースに解説します。
goofmint/growi-plugin-script-template
プラグインの構成
テンプレートプラグインはコーディング知識は不要です。編集するのは dist
フォルダ以下になります。構成は以下のようになっています。
% tree .
.
└── example
├── en_US
│ ├── meta.json
│ └── template.md
└── ja_JP
├── meta.json
└── template.md
3 directories, 4 files
新しいテンプレートを作成する
example
フォルダをコピー、またはリネームしてください。名称は自由ですが、後々のメンテナンスを考えて分かりやすいものにしてください。なお、テンプレートは複数作成できます。
パッケージ名の変更
パッケージ名は package.json
に定義されています。最初に変更してください。
{
"name": "growi-plugin-templates-for-template", // ここを修正
"version": "1.0.0",
"description": "GROWI template plugin for template", // ここを修正
// 省略
}
ロケール毎に修正する
GROWIはデフォルトで日英に対応しています。それぞれのロケール用に en_US
と ja_JP
フォルダが用意されています。他の言語を追加する場合には、 package.json
を修正してください。この他、現在は中国語 zh_CN
と フランス語 fr_FR
に対応しています。
{
// 省略
"growiPlugin": {
"schemaVersion": "4",
"types": [
"template"
],
"locales": [
"en_US", "ja_JP" // ここに追加
]
}
}
メタファイルの修正
メタファイル meta.json
では、テンプレートの一覧表示時の名前を設定してください。
{
"title": "Example title" // ここを修正
}
テンプレートの修正
テンプレートの内容は template.md
になります。内容を自由に編集してください。
# テンプレート例
ここに素晴らしいテンプレート内容を記述してください!
これでテンプレートを自由に作成できます。
テンプレートの内容を作成する
テンプレートの作成は、実際にGROWI上で書くのが簡単です。できあがった内容が問題ないのを確認して、 template.md
にコピーしてください。
テンプレートを利用する
作成したテンプレートの利用手順です。
注意点
テンプレートはGitリポジトリとして公開されている必要があります。
インストール
GROWIの管理画面、プラグイン管理にてインストールを行います。GitリポジトリのURLを入力してください。
利用する
利用する際には、ページの編集画面を表示して、下にあるファイルアイコンをクリックします。
テンプレート一覧が表示されますので、そこから利用したいテンプレートを選択してください。ロケールも指定できます。
まとめ
テンプレートプラグインを使うことで、良くある構成のページを素早く作成できます。また、網羅性のあるページテンプレートを使うことで、記述漏れや検討漏れを防げます。
ぜひテンプレートを活用してください。