WikiChree.COM
新規
編集
添付
管理
WikiChreeガイド
WikiChreeの公式ガイドです。
最新の20件
2026-09-19
プラグイン/linkvote
2026-09-05
DokuFarm
WikiChree.COM
プラグイン/touchgraph
プラグイン/tracker_list
プラグイン/template
プラグイン/version
プラグイン/yetlist
プラグイン/unfreeze
プラグイン/source
プラグイン/versionlist
プラグイン/update_entities
2026-09-04
[テーブル番号または設定]
プラグイン/vote
プラグイン/tracker
プラグイン/topicpath
プラグイン/size
プラグイン/showrss
プラグイン/server
プラグイン/setlinebreak
開始行:
* Pkript/API/data [#t07e53af]
リクエストをまたいで値を永続化するAPI。キー1つが :config/...
** リファレンス [#t2d3b41e]
*** data.get(key, [default]) [#lb6f6002]
#highlight{{
data.get(key, [default])
}}
|~引数|~型|~説明|h
|key|String|取得対象のキー|
|default|any|キーが存在しない場合の戻り値(省略時 null)|
戻り値: 保存された値、またはデフォルト値
読み出しにアクセス制御はない。どのスクリプトからもどのキ...
PKRIPT_ALLOW_DATA が 0 の場合は常にデフォルト値を返す。
*** data.set(key, value) [#abcf92cd]
#highlight{{
data.set(key, value)
}}
|~引数|~型|~説明|h
|key|String|書き込み対象のキー|
|value|any|保存する値(JSON化して保存される)|
戻り値: なし
呼び出し条件: action + POST + wiki.token() のトークン + ...
PKRIPT_ALLOW_DATA が 0 の場合は拒否される。
*** data.has(key) [#j79c350b]
#highlight{{
data.has(key)
}}
- key: String
戻り値: Boolean: キーが存在するか
*** data.remove(key) [#m607830b]
#highlight{{
data.remove(key)
}}
- key: String
戻り値: Boolean: 削除した場合 true、存在しなかった場合 fa...
呼び出し条件は data.set と同じ。
*** data.keys([prefix]) [#afd58bcc]
#highlight{{
data.keys([prefix])
}}
- prefix: String: 絞り込みに使うキーの接頭辞(省略可)
戻り値: Array<String>: キーの配列(辞書順ソート済み)
*** data.canWrite(key) [#j39d0cd6]
#highlight{{
data.canWrite(key)
}}
- key: String
戻り値: Boolean
action / POST / トークンは確認しない(フォーム描画中は常...
*** キーの制約 [#j3a53e8d]
- 使用できる文字: [A-Za-z0-9_-] を / でつないだもの
- 最大バイト数: 128バイト
- 接頭辞(PKRIPT_DATA_PREFIX)の外のページは指定できない
** 使用法 [#df6292c0]
*** カウンターを実装する [#ze23a52e]
#highlight{{
function plugin_counter_action(e) {
const page = e.vars["page"];
const n = data.get("counter/" + page, 0) + 1;
data.set("counter/" + page, n);
wiki.redirect(page);
}
}}
*** 書き込めるときだけフォームを表示する [#n031de67]
#highlight{{
function plugin_vote_convert(e) {
if (!data.canWrite("vote/" + e.args[0])) return "<p>...
return "<form method=\"post\">...</form>";
}
}}
*** キー一覧を取得して集計する [#zf6ab6c6]
#highlight{{
const keys = data.keys("counter/");
const rows = keys.map((k) => "<tr><td>" + htmlsc(k) + "</...
return "<table>" + rows + "</table>";
}}
** 注意点 [#l4a6cecf]
秘密データの保存には使用しないこと。data.get() はアクセス...
終了行:
* Pkript/API/data [#t07e53af]
リクエストをまたいで値を永続化するAPI。キー1つが :config/...
** リファレンス [#t2d3b41e]
*** data.get(key, [default]) [#lb6f6002]
#highlight{{
data.get(key, [default])
}}
|~引数|~型|~説明|h
|key|String|取得対象のキー|
|default|any|キーが存在しない場合の戻り値(省略時 null)|
戻り値: 保存された値、またはデフォルト値
読み出しにアクセス制御はない。どのスクリプトからもどのキ...
PKRIPT_ALLOW_DATA が 0 の場合は常にデフォルト値を返す。
*** data.set(key, value) [#abcf92cd]
#highlight{{
data.set(key, value)
}}
|~引数|~型|~説明|h
|key|String|書き込み対象のキー|
|value|any|保存する値(JSON化して保存される)|
戻り値: なし
呼び出し条件: action + POST + wiki.token() のトークン + ...
PKRIPT_ALLOW_DATA が 0 の場合は拒否される。
*** data.has(key) [#j79c350b]
#highlight{{
data.has(key)
}}
- key: String
戻り値: Boolean: キーが存在するか
*** data.remove(key) [#m607830b]
#highlight{{
data.remove(key)
}}
- key: String
戻り値: Boolean: 削除した場合 true、存在しなかった場合 fa...
呼び出し条件は data.set と同じ。
*** data.keys([prefix]) [#afd58bcc]
#highlight{{
data.keys([prefix])
}}
- prefix: String: 絞り込みに使うキーの接頭辞(省略可)
戻り値: Array<String>: キーの配列(辞書順ソート済み)
*** data.canWrite(key) [#j39d0cd6]
#highlight{{
data.canWrite(key)
}}
- key: String
戻り値: Boolean
action / POST / トークンは確認しない(フォーム描画中は常...
*** キーの制約 [#j3a53e8d]
- 使用できる文字: [A-Za-z0-9_-] を / でつないだもの
- 最大バイト数: 128バイト
- 接頭辞(PKRIPT_DATA_PREFIX)の外のページは指定できない
** 使用法 [#df6292c0]
*** カウンターを実装する [#ze23a52e]
#highlight{{
function plugin_counter_action(e) {
const page = e.vars["page"];
const n = data.get("counter/" + page, 0) + 1;
data.set("counter/" + page, n);
wiki.redirect(page);
}
}}
*** 書き込めるときだけフォームを表示する [#n031de67]
#highlight{{
function plugin_vote_convert(e) {
if (!data.canWrite("vote/" + e.args[0])) return "<p>...
return "<form method=\"post\">...</form>";
}
}}
*** キー一覧を取得して集計する [#zf6ab6c6]
#highlight{{
const keys = data.keys("counter/");
const rows = keys.map((k) => "<tr><td>" + htmlsc(k) + "</...
return "<table>" + rows + "</table>";
}}
** 注意点 [#l4a6cecf]
秘密データの保存には使用しないこと。data.get() はアクセス...
ページ名:
既存のページ名で編集する