HAIK(PukiWiki)のプラグイン作成
HAIKのプラグインの基本仕様はPukiWikiのままです。拡張された仕様があるかもしれません。しかし、QHMやHAIKの公式サイトで情報の掲載はありません。自分でプログラムソースコード見て解析しなければならないのでしょうか。PukiWikiの説明などを中心に自分が作成する時に役立つ基本情報を有志の方のURLなどを集めています。
リンク
「PukiWikiプラグイン作成」でGoogle検索した結果の上位10件程のリンクです。
日付の古いものもあります。
http://pukiwiki.osdn.jp/
PukiWiki/Plug-inの仕様
http://pukiwiki.osdn.jp/dev/?PukiWiki/Plug-in%E3%81%AE%E4%BB%95%E6%A7%98
プラグイン/開発者向け
その他
5段階評価プラグインを通して学ぶPukiWikiのプラグインを作成する方法
簡単なPukiwikiプラグインを作ってみました
http://kurukurupapa.hatenablog.com/entry/20090328/1238249209
プラグイン作成の基本
PukiWikiプラグインの作り方
PukiWiki Pulgin 作り方 メモ
http://blog.jojo.jp/?eid=1360612
当方管理のWEBサイト
QHMでプラグイン作成入門
http://dbweb.0258.net/wiki.cgi?page=QHM%A4%C7%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%BA%EE%C0%AE%C6%FE%CC%E7
概要
A.プラグイン名とプログラムソースコードのファイル名
プラグイン名が「myplugin」だとすると、プログラムは、pluginディレクトリ内にファイル名「myplugin.inc.php」という名前で作成します。
B.プログラムは3種類
プログラムは大きく実行方法によって3種類あります。
1.ページ内に「#プラグイン名」で記述して実行するもの・・・ブロック型プラグイン
2.ページ内に「&プラグイン名;」で記述して実行するもの・・・インライン型プラグイン
3.URLで「index.php.php?plugin=プラグイン名」で実行するもの・・・コマンド型プラグイン
参照: https://pukiwiki.osdn.jp/dev/?PukiWiki/Plug-inの仕様
C.関数名
ブロック型プラグイン・・・ function plugin_プラグイン名_convert();
インライン型プラグイン・・・ function plugin_プラグイン名_inline();
コマンド型プラグイン・・・ function plugin_プラグイン名_action();
の規則で関数名を、Aのプログラム名内に作成し、実行内容を記述します。
- プラグイン名: myplugin
- ファイル名: myplugin.inc.php
- myplugin.inc.phpの内容
function plugin_myplugin_convert() { // 処理内容を記述 } function plugin_myplugin_inline() { // 処理内容を記述 } function plugin_myplugin_action() { // 処理内容を記述 }
※ ファイル内に3つ全てを記述する必要はありません。使わないプラグインは記述しなくても大丈夫です。
D.プラグインの例
まずは、配布されているHAIKのpluginディレクトリ(フォルダ)内に最初に格納されているファイルが参考になると思います。
プラグインで利用できる定義済み変数
参照: pukiwikiのWEBサイト
https://pukiwiki.osdn.jp/dev/?PukiWiki/Plug-in%E3%81%AE%E4%BB%95%E6%A7%98#l8bf2ecb
プラグインで利用できるHAIKの関数
get_source
- 指定したページの内容を取得する
書式
get_source(ページ名);
利用例
$lines = get_source("myPage");
page_write
- 指定したページの内容を更新する
書式
page_write(ページ名, ページの内容, 日付更新無効);
ページ名:HAIKのページ名。
ページの内容:ここで指定した内容にページの内容が書き換わる。
日付更新無効:TRUEとするとページを更新(書き換え)してもタイムスタンプを更新しません。