現在、建姫の情報を募集しております。
この Wiki に載っていない建姫を入手した人、または載っていない情報を提供できる人は、ぜひご協力をお願いします。

掲示板(スレッド)

このゲーム Wiki では、Pukiwiki に標準装備されている『comment』などの機能は使用できませんが、代わりに『thread』プラグインが用意されています。

特徴

利用方法

#thread([スレッドID],[最大メッセージ数],[見出しレベル])
例:
#thread(1)
#thread(2,50,3)
#thread()
#thread(-1,50,3)

利用の注意点

新着メッセージ一覧

例:

#thread_recent()
#thread_recent(20)

ガチャシミュレータ

設置方法

ガチャシミュレータを設置するには、ガチャのデータを載せたページ、設置するページの 2 つのページが必要になります。

#gacha([ガチャページ名])
例:
#gacha(..ガチャデータ/プレミアムガチャ/2016-12-26)

ガチャデータの書式

ガチャ名
ガチャの名称を指定します。重複した名前をつけることも可能ですが、ガチャの種類と開始日時などをつけて、一意の名前にしたほうが管理しやすくなります。
ランク名
出現するアイテムのランクの名称を指定します。(例: 『レアリティ』)
消費資源名
ガチャを引くのに使用する資源の名前を指定します。(例: 『オーブ』)
資源価格
資源 1 個あたりの価格を指定します。大量購入割引がある場合には、最安値を指定します。
消費資源個数
ガチャ 1 回あたりに使用する資源の個数を指定します。10 連割引などがある場合でも、1 連あたりの個数を指定します。
N連
『10 連』など、ガチャを連続で引くことができる回数を指定します。1 連しかない場合にも、便宜のため『10』あたりを指定したほうがいいでしょう。
N連還元
『N 連』で資源の割引がある場合、割引される個数を記述します。割引がない場合には『0』を指定します。
N連確定方式
『N 連』で特定ランクのアイテムが確定出現する場合、その方法を指定します。詳細は後述します。
確定ランク
N連確定方式で出現するランクをコンマ区切りで指定します。(例: 『SSR,SR』)
確率アップ重み
ピックアップガチャのように出現確率がアップするアイテムがある場合、他の同ランクのアイテムと比べた比率を指定します。例えば、『1.4』を指定すると、同ランクの他のアイテムより 1.4 倍 (+40%) 出やすくなります。ピックアップがない場合には『1』を指定します。
none
N連確定はありません。
independent
それまでの結果にかかわらず、\( N \) 連目に確定で『確定ランク』が出現します。
least
直近 \( N - 1 \) 連で『確定ランク』が出現していない場合に、\( N \) 連目に確定で『確定ランク』が出現します。直近 \( N - 1 \) 連で『確定ランク』が出現した場合には、通常通りの方法で抽選されます。多くのゲームでは、この方法が多いと思います。
* 設定

|ガチャ名|プレミアム召喚 (2016-12-01~2016-12-08)|
|ランク名|レアリティ|
|消費資源名|神聖結晶|
|資源価格|66.66|
|消費資源個数|5|
|N連|10|
|N連還元|5|
|N連確定方式|least|
|確率アップ重み|2|

* 確率

|~レアリティ|~確率|
|黒|0.03|
|白|0.1|
|金|0.37|
|銀|0.5|

* アイテム

|~レアリティ|~名前|~クラス|
|黒|*アンジェリーネ|プリンセス|
|黒|帝国剣士ジークリンデ|ソードマスター|
|黒|帝国重装砲兵エルミラ|重装砲兵|
|白|帝国狙撃兵ラルフ|モンスタースレイヤー|
|白|[[*帝国遊撃兵ローザ>ユニット/帝国遊撃兵ローザ]]|レンジャー|
|白|帝国騎士ヴィオラ|インペリアルナイト|
|金|帝国水兵フレイ|セーラー|
|金|帝国重装砲兵ゲオルグ|重装砲兵|
|金|帝国竜人サーベイン|中級竜兵|
|銀|帝国重装歩兵ドワイト|ヘビーアーマー|
|銀|帝国遊撃兵エリック|レンジャー|
|銀|帝国天馬騎士クラーラ|ペガサスライダー|
|銀|帝国付与魔術師ヒース|エンチャンター|
|銀|帝国騎士ルークス|インペリアルナイト|

* テンプレート

|~回数|~レアリティ|~名前|~クラス|
|RIGHT:{{回数}}|CENTER:{{レアリティ}}|{{名前}}|{{クラス}}|

ドロップ率調査

ステージの周回でドロップするアイテムのドロップ率と期待値を計算することができます。

設置方法

  1. ドロップするアイテム情報を記述したページ(以降『データページ』)を作成します。
  2. 調査結果のチャートとフォームを設置したいページに次のコードを記述します。
#drop(データページ名)
例:
#drop(..ドロップ率調査/武器商人と呪いの武器/呪いの弾丸)

データページの記述方法

  1. 『新規』メニューからデータページを新規ページとして作成します。ページ名は『..』から始め、重複しないようにしてください。ステージ名を含めるとわかりやすいでしょう。
  2. データページには、ドロップするアイテム名をリスト形式で記載します。
  3. チャートとフォームを設置したいページにコードを記述します。

データページの例

- 呪いの武器
- ジョヴァンニ
- 白金の聖霊

データのリビルド(修正・削除)

設置したページから『ドロップ情報を投稿する』でデータを追加していきますが、誤ったデータを追加してしまったり、真偽が疑わしいデータが追加されたことにより、過去のデータを修正・削除したい場合があります。

これをデータのリビルドと呼び、次のような手順で行います。

  1. データページ名のうしろに『-log』とついたページを『一覧』メニューから探してください。
    1. 例: データページ名が『..ドロップ率調査/武器商人と呪いの武器/呪いの弾丸』なら『..ドロップ率調査/武器商人と呪いの武器/呪いの弾丸-log』を探します。
  2. 誤ったデータを修正して保存し直してください。
    1. データは表形式で記録され、左から『日時』『試行回数』、その後にアイテムのドロップ数が続きます。
    2. データの最後に空行が入らないように注意してください。
  3. 『管理』メニューから『ドロップ率調査 → リビルド』をクリックし、データページ名を入力し、『リビルド』をクリックします。
  4. データページの内容からドロップ率を再計算し、結果を表示します。

『データのサイズが一致しません。』というエラーメッセージが表示され、リビルドに失敗することがあります。これは、データページに定義されたアイテム数と、過去ログページに記録された列数が異なる場合に発生します。設置した後に、アイテム数を変更したことが原因ですから、データページか過去ログページのどちらかを修正してください。

データベース

データベース機能を使うことで、キャラクター・装備・ステージのような大量データを効率的に管理することができます。

データベースを利用するには、データを表形式で記述する『テーブルページ』と、データをどのように表示するかを示す『テンプレートページ』の 2 つを作成する必要があります。

設置の大まかな手順

  1. 1 つ以上のテーブルページを作成し、データを記述する。
  2. テンプレートページを作成する。
  3. データを表示したいページに #db() または #dbquery() を記述する。

テーブルページの作成

  1. 『新規』メニューからテーブルページを作成します。ページ名は必ず『..db/』から始めてください。例えば、『..db/ユニット』のようにします。
  2. テーブルページに表形式でデータを記述します。
  3. 列へのアクセス時に必要になるため、表のヘッダ <th> は必ず記述してください。
  4. 最初の列は行を表す ID となります。列名は『ID』としてください。1 以上で重複のない整数をつけてください。通常は、1 から順につけますが、必ずしも連番である必要はありません。
  5. ヘッダ行の直前に、それぞれの列の型を指定する行を記述できます。必須ではありませんが、テーブルエディタを使用する際に便利になります。(後述)

テーブルページの記述例(画像の URL は省略しています)

|int|line|line|select(遠,近)|int|int|int|int|int|int|rel(..db/スキル,スキルID,スキル名)|str|t
|~ID|~ユニット名|~クラス|~遠近|~HP|~攻撃力|~防御力|~魔法耐性|~ブロック|~コスト|~スキルID|~画像|
|1|ケイティ|ソルジャー|近|799|152|123|0|2|7|1|http://~|
|2|ベルニス|ヘビーアーマー|近|1131|133|227|0|3|16|2|http://~|
|3|キャリー|ワルキューレ|近|765|242|170|10|1|7|3|http://~|
|4|クレア|アーチャー|遠|616|130|58|0|0|8|3|http://~|

#dbrel(スキル,スキルID,ID,..db/スキル)
|~ID|~スキル名|~効果|~WT|~CT|
|1|援軍要請III|出撃コストが15回復|17.5|35|
|2|防御力強化III|X秒防御力がY倍に上昇|12.5|25|
|3|攻撃力強化III|X秒攻撃力がY倍に上昇|12.5|25|

#dbrel() については後述します。

列の型指定

#dbconfig(type) を使用することで、それぞれの列の型を指定することができます。次のように、列ごとに改行で区切って指定します。

#dbconfig(type){{
int
line
select(,A,B,C)
}}

指定できる型:

int
整数型
real
実数型
line
1 行の文字列
str
複数行の文字列
select(a,b,c,...)
指定したデータ列から選択する。コンマ区切りで指定
rel([テーブルページ名],[現テーブルのキー],[別テーブルのキー])
別テーブルの値を表示する。
[別テーブルのキー] の値がエディタに表示され、[現テーブルのキー] 列に ID が格納される。
別テーブルは #dbrel() で指定されているもののみ使用可能。

テーブルデータのヘッダ部に |t で終了する行を記述する方法もありますが、GUI での編集時に型データが壊れてしまうため非推奨です。

仮想フィールド(列)の作成

#dbconfig(pseudo-field) をテーブルページに記述することで、仮想的なフィールド(列)を作成することができる。

型が int または float の列にのみ指定することができる。

書式:

#dbconfig(pseudo-field,[フィールド名],[仮想フィールドの種類],[追加引数...])

仮想フィールドの種類は以下のものがある。

種類意味追加引数
stat.mean平均値既存の列名, 算出条件
stat.var分散既存の列名, 算出条件
stat.std標準偏差既存の列名, 算出条件
stat.z-scoreZ-スコア既存の列名, 算出条件
stat.t-scoreT-スコア(偏差値)既存の列名, 算出条件
stat.radarレーダーチャート用の値既存の列名, 算出条件

記述例:

// HP の T-スコア(偏差値)を算出し、x['HPスコア'] でアクセス可能に
#dbconfig(pseudo-field,HPスコア,state.t-score,HP)

// レア度が SSR の行からのみ T-スコアを算出する。
#dbconfig(pseudo-field,HPスコア,stat.t-score,HP,x.レア=SSR)

レコード説明ページの作成

テンプレートページの作成

  1. 『新規』メニューからテンプレートページを作成します。ページ名は必ず『..tmpl/』から始めてください。例えば、『..tmpl/ユニットステータス』のようにします。
  2. テンプレートページに Wiki のコードを記述します。
    • どんな記述も可能ですが、通常は表(テーブル)で表示することが多いでしょう。
    • {{x['コラム名']}} などと記述すると、その部分がテーブルページ内のデータに置換されます。例えば、{{x['攻撃力']}} のようにします。
    • 変数 xs は全レコードを表し、変数 x は最初のレコードを表します。
      • xs をループさせる表記にすると、#db#dbquery の両方に対応したテンプレートを記述可能です。
    • Twig テンプレートライブラリの記法でデータを表示できます。詳細は Twig for Template Designers を参照してください。

テンプレートページの例

|~ユニット名|~クラス|~HP|~攻撃力|~防御力|~魔法耐性|~ブロック|~コスト|~スキル|
{% for x in xs %}
|CENTER:&ref({{x['画像']}});&br;{{x['ユニット名']}}|{{x['クラス']}}|{{x['HP']}}|{{x['攻撃力']}}|{{x['防御力']}}|{{x['魔法耐性']}}|{{x['ブロック']}}|{{x['コスト']}}|{{x['スキル']['スキル名']}}|
{% endfor %}

テーブル同士の関係を記述する

例えば、ユニットテーブルとスキルテーブルを別に作成したと仮定します。

表示するユニットの情報にスキルも一緒に表示したい場合、テーブル同士の関係を定義することで可能になります。

具体的には次のようにします。

  1. ユニットのテーブルに『スキルID』のような列を作成します。(列名は記号以外なら何でも構いませんが『テーブル名』+『ID』にすると分かりやすくなります)
  2. 『スキルID』の列に、スキルテーブルの ID を記述します。
  3. ユニットのテーブルページの中(終わり)に #dbrel() を記述します。
  4. テンプレートページ内で ${x.スキル.スキル名} のような形でスキルテーブルへアクセスできます。

#dbrel() の文法は次のとおりです。

#dbrel([使用したい列名],[現在のテーブルの列名],[対象テーブル側の列名],[対象テーブル名],[複数指定])

例えば、次のように記述した場合、

#dbrel(スキル,スキルID,ID,..db/スキル)

ということを意味します。

[複数指定]true を指定すると複数のターゲットを指定できるようになり、x['...'][0] などのように配列としてアクセスできるようになります。省略した場合には、false が指定されたものとします。

逆方向参照

通常は 1:n の関係のときに 1 → n の方向で参照しますが、逆向きの n → 1 方向でアクセスしたい場合もあります。

例えば、スキルとユニットテーブルが存在するとき、次のような参照があります。

この場合、次のように指定することで、逆方向参照を実現できます。(実際には 1 行で)

#dbrel([使用したい列名],
       [対象テーブルが現在のテーブルの参照に使用している列名],
       [現在のテーブルの ID 列名],
       [対象テーブル名],
       [複数指定],
       true)

例えば、スキルテーブルからユニットテーブルへの参照は次のように定義できます。

#dbrel(ユニット,スキルID,ID,..db/ユニット,true,true)

レコード(行)を 1 つだけ表示する

テンプレートを表示したい場所に #db() を記述します。

#db([テンプレートページ名],[テーブルページ名],[ID],[引数...])

下のようにすると、『..db/ユニット』ページに記述した ID=1 のレコードが表示されます。

#db(..tmpl/ユニットステータス,..db/ユニット,1)

arg[...]=... という形式の引数で、テンプレート側に任意のデータを渡すことができます。

#db(..tmpl/ユニットステータス,..db/ユニット,1,arg[a]=1,arg[b]=2)

テンプレート側からは、args['a'] のように参照できます。

条件に合致したすべてのレコードを表示する

すべてのレコード、または条件に合致したレコードを表示するには #dbquery() を使用します。全ユニットの一覧ページを作ったり、『ソルジャー』クラスの一覧を作ったり、攻撃力が高いトップ 10 を表示する場合などに便利です。

レコードを表示したい箇所に #dbquery() を記述します。

#dbquery([テンプレートページ名],[テーブルページ名],[条件文...],[引数...])

条件に使用できるのは以下のとおりです。条件文の指定に順序はありません。

x.コラム名=値
コラム値が『値』であるレコードを選択します。
等号の他に !=, <, <=, >=, > も使用できます。
x.コラム名 in x1:x2:x3:...
コラム値が x1, x2, x3, ... のいずれかであるレコードを選択します。
例: x.クラス in ソルジャー:アーチャー
sort[x.コラム名:...]
『コラム名』でソート(並び替え)します。
x.攻撃力/x.コスト のように四則演算を指定することも可能です。
また、コロンで区切って複数の値を指定することも可能です。
コラム名の先頭に - をつけると、降順ソートになります。
limit[n]
上から \( n \) 個のレコードのみを選択します。\( n < 0 \) の場合、下から \( -n \) 個のレコードを選択します。

例えば、次のように記述した場合、

#dbquery(..tmpl/ユニット一覧,..db/ユニット,x.クラス=ソルジャー,sort[x.攻撃力],desc,limit[3])

を意味します。

任意の条件で検索できるフォームを設置する

#dbform([テンプレートページ名],[テーブルページ名])

#dbform() を記述することで、任意の条件で検索できるフォームを設置できます。各コラムの入力コントロールは、テーブルページで指定した『列の型指定』によって決められます。

重複レコードを禁止する

重複したデータを含むレコードの追加を禁止する場合などには、#dbconfig(unique,...) を使用します。

例えば、以下は同じ『名前』を持つレコードの追加を禁止します。

#dbconfig(unique,名前)

コラム名は複数指定することができ、以下の例では『レア』と『名前』の両方が一致したレコードのみ禁止対象とします。

#dbconfig(unique,レア,名前)

編集ページにレコードごとのヘルプを記述する

#dbconfig(field-desc) を使用することで、レコード編集ページにレコードごとのヘルプ文を追加することができます。

#dbconfig(field-desc,[フィールド名],[説明文])

『説明文』が複数行にわたる場合には、次のように記述します。任意の Wiki 記法を使用可能です。

#dbconfig(field-desc,レア){{
このように&br;
複数行を&br;
記述できます。
}}

編集ページにフィールドごとの定型文(テンプレート)を指定する

#dbconfig(field-template) を使用することで、レコード編集ページにフィールドごとの定型文を指定することができます。#dbconfig を複数記述することで 1 つのフィールドにつき複数の定型文を指定することも可能です。

ドロップアイテムやクリア報酬のように、定型文を入力する機会が多いフィールドに使用すると便利です。

#dbconfig(field-template,[フィールド名],[定型文])

例えば、次の指定では『ドロップアイテム』フィールドに 3 つの定型文を指定しています。

#dbconfig(field-template,ドロップアイテム,コイン)
#dbconfig(field-template,ドロップアイテム,カチャコイン)
#dbconfig(field-template,ドロップアイテム,Nカード)

#dbconfig(field-template) は、line 型または str 型のフィールドにのみ指定可能です。

レコードが追加された時に対応するページを自動生成させる

レコードを新規追加した場合、通常は『このレコードを基にページを新規作成する』から手動でページを作成する必要があるが、#dbconfig(page-rule) を使用することで、レコード追加時に対応するページを自動生成させることができる。

#dbconfig(page-rule,[ページ内コンテンツのテンプレートページ名]){{{
[生成するページ名のテンプレート文字列]
}}}

例えば、以下のように指定し、『SSR/アリス』というレコードを追加すると、『..テンプレート/ユニット』ページを使用してページ内コンテンツを生成し、『ユニット/アリス』というページを生成する。

#dbconfig(page-rule,..テンプレート/ユニット){{{
ユニット/{{x['名前']}}
}}}

編集時のドロップダウンリストに表示される順序を指定する

関連テーブルの内容を表示するドロップダウンリストには通常 ID 昇順にソートされた状態でアイテムが表示されるが、#dbconfig(select-order) を使用することでソート順を変更することができる。

#dbconfig(select-order,[ソートに使用するキー],[逆順?])

例えば、『名前』列をソートに使用する場合は、次のように記述する。

// 『名前』の昇順
#dbconfig(select-order,名前)

// 『名前』の降順(逆順)
#dbconfig(select-order,名前,true)

注意点

編集リクエスト

TODO と呼ばれる機能を使用することで、「このページのここを編集して欲しい」という要求を Wiki の読者に伝えることができます。

TODO の追加

編集を希望する箇所に #todo#todoend で要求を記述します。

#todo([要求のタイトル])
[要求の本文]
#todoend

『要求のタイトル』は要求の概要を示す文字列で、ページ名とともに TODO リストに表示されます。そのため、ページ名とタイトルだけで「どのような要求なのか?」を読者が推測できるように設定しましょう。例えば、『○○の完凸画像募集』『○○のステータス情報募集』などです。

『要求の本文』には任意の Wiki を記述できます。どのような編集を希望しているかを、簡潔かつ具体的に記述しましょう。

TODO の記述例:

#todo(ユニット画像を募集)
- 完凸希望ですが、完凸じゃなくてもいいです
#todoend

TODO 一覧の表示

TODO 一覧を表示したい場所に以下のコードを記述します。

#todolist

通常は、トップページの見やすい位置に設置するといいでしょう。

本文の前後に定型文を表示する

すべてのページの本文の前後に定型文を表示させることができます。

基本的には、重要なお知らせを通知する時に使用します。特に、DB やページ構造の変更のように、一時的に他の利用者に編集されたくないような場合の通知に適しています。

設置方法

『..BeforePost』『..AfterPost』というページに記述した内容が、それぞれページの前と後に表示されます。

特に重要な警告文を掲載する時には、#div プラグインに class="warn" を指定すると、赤字に白の目立つデザインで簡単に通知できます。

アンテナ

ソースページの作成

rss
RSS の情報を取得します。主にブログなどに使用します。
bbs
2ch のスレッドを取得します。『URI』には 2ch を指定し、『補足』に検索キーワードを kw= に続けて指定します。
twitter
ツイートを取得します。特定のアカウントの場合、『URI』に @アカウントID を指定します。キーワード検索の場合にはキーワードそのものを指定します。

ソースページの例:

|~名前|~種別|~URI|~補足|
|千年戦争アイギスWiki|rss|http://aigis.gcwiki.info/?cmd=rss||
|Pinkbbs スレ|bbs|2ch|kw=アイギス|
|政務官アンナ / 千年戦争アイギス運営|twitter|@aigis1000||
|Twitter検索: アイギス|twitter|アイギス||

注意

フレンド・マルチ募集

フレンド募集やマルチ募集などのように招待コードを書き込み・管理できる機能です。通常の掲示板と異なり、募集期限や募集人数を設定できるため、効率的に募集の管理ができます。

設置方法

適当なページを作成し、募集機能を設置したい箇所に #invite() を記述します。

#invite(名前,最大日数,最大人数)

例えば次のように記述することで、『フレンド募集』という名前、最大日数 7 日間、募集最大人数 3 人の募集機能を設置できます。

#invite(フレンド募集,7,3)

最大日数は、フレンド募集で 3 ~ 7 日間、マルチ募集で 1 ~ 3 日程度にするといいでしょう。

また、本機能を設置したページは凍結しておくことをおすすめします。

タグ

ページにタグをつける機能です。

タグの設定

ページ内の #tag(...) を記述することで、ページにタグをつけることができます。

#tag(タグ1,タグ2,タグ3,...);

タグがついたページ一覧の表示

#taglist(タグ名); を記述することで、そのタグがついているページの一覧を表示します。

#taglist([タグ名],[basename])

basename を指定すると、スラッシュ以前の部分(いわゆるフォルダ名)が削除され、ファイル名部分のみが表示されます。例えば、キャラクター/SSR/アリス というページは アリス と表示されます。

経験値・合成シミュレータ

設置(経験値シミュレータ)

#fusion_config(target,[種別名],[EXP 定義テーブル名])
#fusion_config(mode,no-cands)
#fusion

例:

#fusion_config(target,プレイヤー,..db/プレイヤー経験値)
#fusion_config(mode,no-cands)
#fusion

設置(合成シミュレータ)

#fusion_config(target,[種別名],[EXP 定義テーブル名])
#fusion_config(combination,[合成素材名],[獲得 EXP],[デフォルトでこの素材を使用するか?])
#fusion_config(mode,cands)
#fusion

例:

#fusion_config(target,R,..db/R経験値テーブル)
#fusion_config(target,SR,..db/SR経験値テーブル)
#fusion_config(combination,EXP用素材R,1000,true)
#fusion_config(combination,EXP用素材SR,4000,false)
#fusion_config(mode,cands)
#fusion

経験値テーブル

例:

|int|int|int|t
|~Lv|~Exp|~資金|
|1|42|800|
|2|43|960|
|3|45|1120|
|4|46|1280|
|5|48|1440|
...
|99|0|0|

注意

Twig テンプレートを利用する

Wiki 記法中に Twig テンプレートエンジンを使用することができます。

この機能により、例えば以下のような処理が簡潔に記述できるようになります。

仕様制限

本機能は凍結しているページでしか動作しないように制限をかけてあります。凍結・凍結解除には非公開パスワードが必要であるため、本機能が必要な場合には、Wiki の管理者か運営者に『編集者用掲示板』などから依頼してください。

ページ内の一部のみで本機能を使用したい場合、ページソースに直接記述すると、すべての部分を通常ユーザーが編集できなくなってしまいます。そのため、本機能を使用したい箇所を .. から始まる別ページとして作成し、それを #include() する形にするといいでしょう。

使用方法

Twig 文法は #twig{{{...}}} のみで有効で、典型的な用法は次のようになります。

// 例: 1 ~ 10 までの数値を箇条書きで表示する
#twig{{{
{% for i in range(1, 10) %}
-{{i}}
{% endfor %}
}}}

ZWiki 専用関数

以下では、ZWiki 独自に定義された関数について解説します。Twig の基本的な関数や制御構造については、Documentation - Twig を参照してください。

twig.basename(page)

ページ名から、スラッシュで区切られた一番右側の部分を取得します。

例えば、twig.basename('キャラクター検索/レア/SSR')'SSR' を返します。

例:

// ..db/ から始まる全ページを検索し、"..db/" の右側の部分のみをリスト表示する
#twig{{{
{% for x in twig.findPages({pat: '..db/.*'}) %}
-{{twig.basename(x)}}
{% endfor %}
}}}

twig.findPages({...})

指定された条件に合致するページ名の一覧を取得します。

条件はマップ(連想配列)で指定し、次のような意味を持ちます。

キー意味デフォルト値
pat検索するファイル名の正規表現.*^\\.\\.db/.*$
sortソート条件なしページ名: pagename
最終更新日時: mtime
order表示順asc小→大: asc
大→小: desc

例:

// 『ユニット/...』という形の全ページを最終更新日時が新しい順にリスト表示する
#twig{{{
{% for x in twig.findPages({pat: '^ユニット/.*', sort: 'mtime', order: 'desc'}) %}
-{{twig.basename(x)}}
{% endfor %}
}}}

twig.mtime(page, fmt)

指定したページの最終更新日時を取得します。

fmt には strftime 形式での表示形式を指定し、省略時には %Y-%m-%d %H:%M が使用されます。

例:

// 全ページについて、ページ名と最終更新日時をリスト表示する
#twig{{{
{% for x in twig.findPages() %}
-{{twig.basename(x)}} ({{twig.mtime(x)}})
{% endfor %}
}}}

twig.table(tableName)

指定した名前(ページ名)のテーブルをロードし、インスタンスを取得する。

Table インスタンスの次のフィールドまたは関数にアクセスできる。

フィールド意味
keys列の名前の配列
rows行 (Row) の配列。詳細は後述
types列タイプの配列
size行数
getMaxId()ID の最大値

rows フィールドで取得できる Row インスタンスには、アクセス可能な以下のフィールドまたは関数がある。

フィールド意味
at(n)n 番目の列の値を取得する
get(key)key 列の値を取得する
getReduced(key)x.スキル.スキル名 の形式で値を取得する

例:

// ..db/ユニット内の全レコードについて、ユニット名とスキル名をリスト表示する
#twig{{{
{% set tbl = twig.table('..db/ユニット') %}
{% for row in tbl.rows %}
-{{row.get('ユニット名')}} ({{row.get('スキル').get('スキル名')}})
{% endfor %}
}}}

使用できる PHP 関数

Twig が標準でサポートしている関数に加え、以下の PHP の関数が使用できます。

+  ...
Loading...
メニュー
建姫
掲示板
ガチャ
最上部へ
検索結果 (0)
詳細検索ページへ
以下のコンテンツ(写真・画像・文章)が含まれないことを確認してください。
※この確認は定期的に表示されます。