FANDOM


此擴展功能在Fandom上已經預設啟用

parser函數(Parser functions)是使用於MediaWiki的一些特殊語法,可以擴展 模板的功能使用邏輯運算。當使用的時候,parser函數會使用式子中的變量得出特定的結果。本功能目前在Fandom是預設開放的。

Parser函數的寫法與模板相同,放在波型括號({{}})之中。可能用一個冒號或是數字符號(#) 標示之後帶出function名稱 (或兩者都用,例如 {{#if:}}).

在一個wiki中可以使用的parser函數會列在Special:Version

使用步驟

  1. 確認適合你想要達成作用的parser函數。有許多種類的parser函數,因此需要先花時間作一了解。
    在這些步驟說明中有連結到各個函數更詳細介紹頁面的資訊。
  2. 確認你想要用的函數的合適語法。
    在這個步驟指引中,我們會使用{{#ifexpr:}} (if expression) parser函數,該函數是各Fandom站預設啟用的。它的語法是:
    {{#ifexpr: 式子 | 如果為真時顯示為 | 如果為假時顯示為 }}
  3. 填寫語法。
    {{#ifexpr: 1 > 0 | 是 | 否 }}
    在上面的例子中,我們填寫了數學的式子,當1>0為正確時,設定函數顯示「是」,1>0為錯誤時顯示為「否」。
  4. 儲存頁面並確認函數得出的結果如你的預期。在我們的例子中,應該要顯示為「是」,因為1的確就是大於0。
    {{#ifexpr: 1 > 0 | 是 | 否 }}.
    注意當我們改變了式子,而讓顯示值一樣的時候會變成如何,該等式被證明是錯誤,因為0不會大於1,因此會得出「否」
    {{#ifexpr: 1 < 0 | 是 | 否 }}.

上述的例子可能看起來很笨,因為大家都知道 1 > 0, parser函數的效力在用一個變量的時後就能展現出來。例如假如你正在設計一個關於電視節目的訊息框。你希望顯示角色的年紀,並藉此判定他是否是成年人。

如果在訊息框中有{{#ifexpr: {{{年紀}}} >= 18 | 這個角色是成年人 | 這個角色未成年}},「年紀」這個變量中的數值大於等於18時,最後會顯示「這個角色是成年人」 ,當小於18時,會顯示「這個角色未成年」

內建於MediaWiki的parser功能

MediaWiki軟體本身就有內建許多parser函數功能:完整的列表可見於 MediaWiki.org,本頁則列出其中最有用的。

{{fullurl:}}
顯示特定頁面的完整網址
{{fullurl:Help:內容}}/zh/wiki/Help:%E5%85%A7%E5%AE%B9
{{#language:}}
將一個語言代碼轉換為該語言在該語言中的名稱
{{#language:zh}} → 中文
{{lc:}}
讓一段字母變成小寫 ({{uc:}}則剛好相反)。
{{lc:CASE}} → case
{{ns:}}
寫出命名空間號碼 就得出命名空間的名稱。
{{ns:4}} → 社区中心
{{plural:}}
提供數值1的時候,顯示單數的用詞,提供數值2的時候,顯示複數的用語。
{{plural:1|is|are}} → is
{{plural:2|is|are}} → are

Parser函數擴展

Ifelselogic

Parser函數擴展使用簡單的邏輯而產生實用的代碼。

The Parser函數擴展是一個常用的MediaWiki擴展功能,它增加了許多有用的parser函數。這個擴展目前在Fandom是預設開啟使用的。該擴展中也包括了已不再使用的擴展StringFunctions中大部分的函數,其中最常用的是 {{#explode}}.

Parser函數擴展中有包括數學運算、如果/其他 等陳述、以及時間等等函數。要看這些函數的完整列表以及如何使用它們,請參見:擴展的官方幫助頁面(英文)

其他擴展

Fandom上還有很多其他常用的擴展功能,其中還有一些parser函數。以下是一些常見的。

因此如果某個擴展有你感興趣的函數在裡面,請參見MediaWiki.org上該擴展的說明頁面。

另參見

除了特别提示,社区内容遵循CC-BY-SA 授权许可。

Fandom may earn an affiliate commission on sales made from links on this page.

Stream the best stories.

Fandom may earn an affiliate commission on sales made from links on this page.

Get Disney+