跳轉到內容

幫助:模板

This page is semi-protected.
來自華夏公益教科書
(重定向自 幫助:模板)

一個模板 只是一個為包含在其他頁面上而設計的頁面。如果模板被更改,這通常會反映在使用該模板的每個頁面上。正如你可能開始想象的那樣,模板是一個強大的工具,如果使用得當,可以減少工作量並提高可維護性。在本頁中,你將學習如何使用模板以及如何製作自己的模板。

模板 B 可以包含在頁面 A、P 和 Q 上以顯示其內容。更新模板將更改使用它的頁面上顯示的內容。


一般

模板可以包含任何所需的維基文字,包括對其他模板的呼叫。它們具有一些有限的程式設計能力:可定製的值(稱為引數)、計算和分支(使用解析器函式)以及對維基特定變數的訪問,例如日期、時間和頁面名稱。

要在頁面中使用模板,模板標籤(形式為{{模板名稱}},即模板名稱用雙花括號括起來)將被新增到你想讓模板出現的地方。當讀者想要檢視頁面時,伺服器會獲取模板頁面上的內容,處理與頁面相關的任何變數,並將結果顯示在模板標籤的位置。

模板適用於任何希望在兩個或多個頁面中複製文字的文字,並且不需要每個副本都獨立編輯,以適應它所在的頁面。由於可以使用引數,版本在一定程度上甚至可以不同,並且引數值可以針對每個版本獨立編輯。模板不僅方便,而且還可以“強制”有用的統一性,例如,某種“樣式”。

典型應用是

  • 訊息 用於顯示資訊({{split}})
  • 導航 在書籍的頁面或章節之間,以便線上閱讀更容易({{chapter navigation}})
  • 用於顯示視覺資訊的位置佔位符。例如表格、圖形、圖表、插圖等。
  • 由簡單影像表組成的複合體,顯示更復雜的思想({{chess diagram}}

模板頁面和名稱空間

模板有自己的名稱空間,它使用字首“Template:”(類似於熟悉的“User:”、“Help:”和“Talk:”名稱空間)。

大多數模板存在於模板名稱空間中,因此可以在標題為“Template:模板名稱”的頁面上找到。但是,有時使用者會在其他名稱空間中建立模板,例如 User: 名稱空間。模板的正常使用(稱為轉包容)可以從任何名稱空間進行,但模板名稱空間的優勢在於,在轉包容時不需要“Template:”字首。相比之下,為了從除主名稱空間(書籍所在的名稱空間)以外的任何其他名稱空間轉包容內容,需要完整的名稱,包括名稱空間字首。如果從主空間轉包容(很少這樣做),則必須在模板語法中新增冒號作為字首,否則軟體會將程式碼視為未建立的模板。因此

名稱空間 編碼示例 結果
模板 {{模板名稱}} 模板內容的轉包容
模板和主空間之外 {{Wikibooks talk:頁面名稱}} 頁面內容的轉包容
主空間 {{:書籍標題}} 書籍內容的轉包容
不帶冒號的主空間 {{書籍標題}} 紅連結 到未建立的模板

模板名稱與其他頁面名稱完全相同:區分大小寫,除了第一個字母外,空格與下劃線沒有區別。如果符號 #(通常用於連結到頁面的部分)出現在花括號內,則它和任何跟隨它的字元都會被忽略。

模板頁面,與大多數其他頁面一樣,有與之關聯的討論頁面,編輯者可以在其中討論與模板相關的任何問題。(出於這個原因,模板不應該放在“Talk:”名稱空間中,即使它們是打算用於討論頁面的;因為討論頁面沒有自己的討論頁面,所以沒有頁面可以用來討論模板。)

模板用法

要將模板轉包容到另一個頁面,請使用以下語法(稱為模板標籤

{{ 模板名稱 | 引數 | 引數 | ... }}

這包括模板名稱和傳遞給模板的各種引數,其中每個引數都由豎線(或管道)分隔,並且整體被雙花括號包圍,{{...}}。模板標籤應放在頁面上你想讓模板出現的位置。在轉包容時永遠不需要“Template:”字首,只需要在查詢和編輯模板本身時才需要(儘管如果模板是在不同的名稱空間中建立的,則需要該字首)。並非所有模板都有引數,並非所有有引數的模板都需要提供值,因此有時 {{模板名稱}} 就足以使用模板。如果需要引數,但使用者沒有提供值,則模板可能會呈現為文字中的{{{...}}},其中 '...' 可能是數字或引數名稱。這是為了通知使用者缺少命名或未命名的引數,可以使用引數預設值來避免這種情況。

引數有兩種基本形式

  • 無名引數(有時稱為“位置”引數):按其出現順序放入模板中的值
    {{模板名稱|引數1|引數2|... }}
  • 有名引數:與模板中特定命名鍵關聯的值
    {{模板名稱| 引數名1 = 引數1 | 引數名2 = 引數2 | ... }}

這些可以混合使用

{{模板名稱|引數1|引數2| 引數名1 = 引數3 | 引數名2 = 引數4 | ... }}

按照慣例,有名引數列在最後,但這並不是強制要求。空白字元(空格、製表符、回車符)從有名引數值的開頭和結尾刪除(無名引數不受影響),但不會從中間刪除:因此 {{ ... | myparam = this is a test }} 將被視為使用者輸入了 {{ ... |myparam=this is a test}}。

模板頁面本身可能包括與模板一起轉包容的材料(例如文件或模板本身所屬的分類),或者在頁面被轉包容時使用的材料(例如分類 應用於轉包容頁面,但不應用於模板)。請參見下面對includeonlynoinclude 標籤的討論。

嘗試轉包容一個不存在的模板會產生一個紅連結,就像連結到任何其他不存在的頁面一樣。點選連結可以建立該特定模板。

基本模板用法示例

如果你想嘗試任何這些,請使用模板沙箱.

沒有引數的模板

要檢視一個非常簡單的模板示例,請檢視Template:Tc。此模板僅將字母“in”轉入其他頁面。例如,將以下短語編輯到任何頁面將產生相關結果

使用模板{{tc}}
描述 輸入文字 處理後的結果
{{Tc}} 自身 {{tc}} in
單次使用 {{tc}} {{tc}} 2009年,隨著巴拉克·奧巴馬入主白宮,我們發現…… 在2009年,隨著巴拉克·奧巴馬入主白宮,我們發現……
多次使用 {{tc}} {{tc}} 2009年,隨著巴拉克·奧巴馬入主白宮,我們發現…… 在2009年,隨著巴拉克·奧巴馬入主白宮,我們發現……

你會注意到,模板在轉入時只包含字母“in”,儘管模板頁面上的解釋文字(“此模板用於...” 點選上面的模板連結檢視)。如果你編輯模板頁面,(點選此連結),你會看到除了字母“in”之外的所有內容都包含在 'noinclude' 標籤中,這將在後面討論。

帶有未命名引數的模板

帶有引數的轉入只是稍微複雜一點。舉個簡單的例子,著名的死人手可以透過以下模板使用未命名引數來重現

製作死人手
描述 輸入文字 處理後的結果
使用三個模板(Template:ClubsTemplate:DiamondsTemplate:Spades {{clubs|A}} {{clubs|8}} {{spades|A}} {{spades|8}} {{diamonds|9}} A 8 A 8 9
使用(Template:BridgeHandInline);雖然沒有那麼漂亮,但它只有一個模板,有四個引數。 {{BridgeHandInline|A8||9|A8}} ♠A8 9 ♣A8
使用(Template:BridgeHandInline),但缺少管道分隔符 {{BridgeHandInline|A8|9|A8}} ♠A8 9 A8 ♣{{{4}}}

在第二個示例中,引數在模板標籤中的位置決定了它屬於哪個花色。因此,第一個 A8(第一個槽位)屬於黑桃,空位置(第二個槽位)屬於紅心,9(第三個槽位)屬於方塊,第二個 A8(第四個槽位)屬於梅花。請注意,空引數位置也被計算在內;如果忘記了額外的管道,就像第三個示例一樣,結果就是卡片最終會出現在錯誤的位置,並且會出現 {{{4}}},這意味著模板正在等待第四個位置引數的值,但沒有提供。請參閱下面的關於引數和預設值部分

帶有命名引數的模板

使用命名引數類似於使用未命名引數。例如,Template:Payoff matrix(用於一些關於博弈論的書籍)給出了一個簡單的 2x2 網格,它具有可調整的值,使用 UL、UR、DL 和 DR 來表示左上、右上、左下和右下,以及一個 Name 引數來在矩陣底部新增名稱。

描述 程式碼 結果
支付矩陣 {{payoff matrix | UL = 5 | UR = 7 | DL = 2 | DR = 9 | Name = Example usage }}
5 7
2 9
Example usage
顯示缺失引數的預設值和不同排序的支付矩陣 {{payoff matrix | DR = 9 | Name = Example usage | DL = 2 | UR = 7 }}
0, 0 7
2 9
Example usage

在第二種情況下,引數的順序已更改,但結果沒有改變——這是命名引數優於未命名引數的優點之一——並且其中一個值(UL)已完全移除,允許模板插入“0, 0”的預設值。

引數名稱區分大小寫,即使是第一個字元。例如,使用“dr = 9”“Dr = 9”“dR = 9”而不是“DR = 9”會導致右下單元格顯示預設值“0, 0”。備用大小寫版本被視為不同的引數,並被模板忽略。

替換

通常,當用戶瀏覽頁面時,模板會被處理成可讀的文字。這是模板的正常意圖:由於模板每次使用時都會重新評估,因此對模板的更改可以快速輕鬆地傳播到多個頁面。但是,在某些情況下,這並不合適。例如,使用者可能想要一個返回固定日期或時間的模板,而不是每次瀏覽頁面時都更改。對於這些情況,可以使用替換,方法是在模板標籤中的模板名稱前新增subst:。替換的作用與其名稱完全一致:它不是每次瀏覽頁面時都處理模板,而是將模板在儲存編輯時進行處理,並將模板標籤替換為已處理的結果。

例如,模板{{tc}}(如上所示)會在其放置的任何地方新增字母“in”。因此,維基文字bra{{tc}}將生成單詞brain。但是,維基文字將始終保持為bra{{tc}},因此,如果{{tc}}被更改為新增字母“wn”,則維基文字將生成brawn而不是brain。使用如下方式進行替換 - bra{{subst:tc}} - 將永久更改維基文字以讀取brain,以後對模板{{tc}}的更改不會對替換後的文字產生任何影響。

常見錯誤

URL 問題

URL 可能包含等號(=),例如 http://some.page.org?key=value&key2=value2。但是,模板引數列表中的第一個等號始終被視為啟動一個命名的模板引數。因此,{{some template|http://some.page.org?key=value&key2=value2}} 將被視為http://some.page.org?key 是一個引數名稱,而不是 URL 的開頭。此問題有兩種解決方法

  • 使用顯式位置引數引用:{{some template|1=http://some.page.org?key=value&key2=value2}}。'1=' 明確地引用第一個位置引數,並將避免後續的等號
  • 使用特殊模板{{=}}:{{some template|http://some.page.org?key{{=}}value&key{{=}}value2}}。此模板返回一個不會被維基軟體解析或解釋的等號。

空白問題

命名引數將自動從引數中刪除空白——空格、製表符、回車符和換行符,或其他不可見字元。未命名引數將保留所有空白。這會導致預期行為錯誤的奇怪格式問題。

垂直管道問題

垂直管道字元(|)用於模板(和解析器函式)中來分隔引數。如果你需要向模板引數提供管道字元,那麼使用特殊模板{{!}},它將返回一個未解析的管道字元,或者使用HTML 實體|來表示管道字元。

建立和編輯模板

模板的建立和編輯方式與其他頁面基本相同:選擇一個合適的名稱,導航到該頁面,然後點選編輯選項卡或建立新頁面,具體視情況而定。唯一的區別是模板通常會放在“Template:”名稱空間中,而不是(無字首的)主名稱空間中。任何可以在普通頁面上包含的內容都可以包含在模板中,包括其他模板。除此之外,模板還可以訪問程式設計功能——引數解析器函式變數——這些功能允許上下文相關的使用,以及幫助控制哪些資訊被轉入和哪些資訊不被轉入的特殊標籤。

在建立模板時,最好遵循一些簡單的原則

  • 選擇一個簡短、描述性的名稱。有些人建議通用的模板名稱全部使用小寫字母,而特定書籍的模板名稱使用Template:Book Name/Template Name形式,但目前還沒有硬性規定。
  • 快速搜尋模板空間或瀏覽模板,確保你建立的模板還沒有被建立。有時,增強現有的模板比從頭開始建立一個新模板更容易、更好。
  • 確保你的模板有適當的文件,幷包含在正確的類別中。(見下文)
  • 嘗試使您的模板模組化:即能夠獨立存在,並在各種不同的頁面上下文中使用,不會出現故障、生成不良輸出或弄亂頁面的佈局。一般來說,您希望您的模板對其他編輯者來說是透明且有用的——他們需要投入更多精力來理解您的模板的使用方式,他們就越不願意使用它。

模板文件

對您的模板進行分類和記錄將使其他編輯更容易找到和使用它。

  • 要新增文件,請將{{documentation}}模板放在模板頁面的'noinclude'標記內。這將建立一個文件子頁面,您可以對其進行編輯。
  • 適用於模板本身的類別應新增到模板頁面(在“noinclude”標記內,使用{{documentation}}模板)。要轉入轉入頁面的類別應放在模板頁面的'includeonly'標記內。

引數

引數是允許將維基文字饋送到模板的特殊程式碼;可以構建模板以根據其接收的引數值產生不同的結果。引數可能有名稱,也可能透過模板標記中提供的值的順序進行引用(模板程式碼中引數的順序無關緊要)。模板中的引數採用{{{...}}}的形式,其中三重花括號括住命名引數的名稱或位置引數的編號。為引數輸入的值可以很長,如果需要,可以將整個頁面的轉入用作引數的值。

要了解引數的工作原理,請考慮以下示例。假設有一個名為“peoplepets”的模板,它會生成一些關於人和寵物的文字。該模板的模板標記可能如下所示

A. {{ peoplepets | John | Mary | age = 6 | Fido | small | kind = dog }}
B. {{ peoplepets | Bill | Susan | age = 7 | Queenie | fat | kind = cat }}

模板本身的內容,在頁面Template:Peoplepets上,如下所示

{{{1}}}{{{2}}} 擁有一隻 {{{4}}} {{{kind}}} 叫做 {{{3}}},它已經 {{{age}}} 歲了。

因此,上面兩個模板標記將分別轉入以下文字

A. John 和 Mary 擁有一隻名叫 Fido 的小狗,它已經 6 歲了。
B. Bill 和 Susan 擁有一隻名叫 Queenie 的胖貓,它已經 7 歲了。

需要注意的事項

  • 位置引數的編號會跳過命名引數(如上面的“age”)。
  • 模板標記中命名引數值的開頭和結尾空格將被模板剝離。
    • 這對於未命名引數不適用,未命名引數會保留尾隨和前導空格。但是,瀏覽器會將多個空格字元渲染為單個空格,因此“Fido”、“fat”和其他未命名引數值的周圍額外空格不會立即顯示。如果未命名引數用於顯示以外的其他目的,例如連結,這可能會令人困惑。
  • 命名引數值在模板中使用的順序無關緊要。
  • 位置引數的編號被視為名稱:{{ peoplepets | John | ... }} 可以寫成 {{ peoplepets | 1 = John | ... }}。當需要按相反順序輸入位置引數或位置引數值包含等號時,這很有用。
  • 值可以為空。這裡,第二個位置引數和“age”引數的值為空
    模板標記:{{ peoplepets | John || age = | Fido | small | kind = dog }}
    生成(注意缺少的單詞):John 和 擁有一隻名叫 Fido 的小狗,它已經 歲了。
  • 值可以保持未提供。這裡省略了“kind”引數
    模板標記:{{ peoplepets | John | Mary | age = 6 | Fido | small }}
    生成(這將顯示缺少的引數):John 和 Mary 擁有一隻名叫 Fido 的小 {{{kind}}},它已經 6 歲了。

引數預設值

可以使用豎線字元:| 為引數指定預設值。上面的示例模板可以改寫如下(其中“friend”是位置引數 2 的預設值,第四個位置引數預設為空,寵物的“kind”預設為“dog”——參見Template:Peoplepetsd)。

{{{1}}}{{{2|friend}}} 擁有一隻 {{{4|}}} {{{kind|dog}}} 叫做 {{{3}}},它已經 {{{age}}} 歲了。

像這樣的模板標記:{{ peoplepetsd | Bill | age = 7 | 3=Queenie }} 然後會生成短語Bill 和 friend 擁有一隻名叫 Queenie 的狗,它已經 7 歲了

請注意,狗名前面的“3=”是必需的,因為未指定第二個位置引數。

引數的空值將覆蓋預設值,生成一個空空格。換句話說,{{ peoplepetsd | Bill || kind=| age = 7 | 3=Queenie }} 然後會生成短語 Bill 和 擁有一隻名叫 Queenie 的,它已經 7 歲了

虛擬引數和標記佈局

如果模板標記提供了未使用引數,則會忽略這些引數。這樣做是為了防止轉入在以刪除引數的方式更改模板時出現故障;無需轉入模板的每個頁面並更改標記。但是,這有一個額外的好處,即透過間距或添加註釋,使某些模板標記更具可讀性。使用 {{t3d}}

虛擬引數
描述 輸入文字 結果
使用模板 {{t3d}} 添加註釋
{{t3d |a|b|c| row 1
      |d|e|f| row 2
      |g|h|i| row 3
}}
a b c

d e f
g h i

由於 {{t3d}} 不使用引數 {{{4}}}{{{8}}}{{{12}}},“行號”值不會影響生成的維基文字。虛擬命名引數可以在任何模板標記中使用;只需選擇一個未使用的引數名稱並將其新增為“unusedname = value”即可。虛擬命名引數的一種特殊情況是使用空字串作為引數名稱。

引數和引數值的限制

  • 未命名引數不能分配包含等號(=)的值;解析器將等號視為命名引數的分配。有一些間接方法可以解決此限制
    • 在模板中,將值寫為未定義引數的預設值
      • {{{0}}},其中省略號可以是未使用的位置引數的編號,也可以是空字串(空引數)。
    • 在頁面中,使用以下方法之一將值分配給模板引數
      • {{templatename| 1= a=b }},其中“1=”符號顯式命名第一個未命名引數。
      • 使用特殊模板 {{=}},例如,{{模板名稱| a{{=}}b }}
      • 使用等號的HTML 實體:=。這僅適用於文字表示;如果等號需要作為實際等號(如在另一個模板中)進行處理,則此方法無效。
  • 引數值不能包含豎線(|)字元;解析器會將豎線字元視為分隔符,而不是文字。豎線可以在維基連結(country=[[United States|USA]])或巢狀模板(例如,volume= {{convert|30|acre.ft|m3}})內使用。解決此限制的間接方法如下
    • 使用特殊模板 {{!}},它會返回有效的豎線字元。如果您需要將某些內容作為實際豎線字元讀取(例如,如果您正在使用引數修改維基文字表格的結構),請使用此方法。
    • 使用豎線的 HTML 實體:|。這僅適用於文字表示;如果豎線需要作為實際豎線進行處理,則此方法無效。
  • 引數值不能包含不匹配的連續花括號 - }} 或 {{。解析器會嘗試將其解析為模板標記或引數的開頭或結尾,並在某個地方丟擲錯誤。但是,引數可以包含其他引數、魔術字或模板標記。
    • 同樣,這可以使用“nowiki”標記或 HTML 實體來解決。

巢狀模板

模板可以包含其他模板——通常稱為“巢狀”。在處理模板時,任何巢狀模板生成的維基文字都會轉入巢狀模板,因此最終產品本質上是從最深層巢狀的模板開始處理的。雖然在應用方面相當簡單,但它涉及一些值得注意的怪癖和技巧。

要將引數值傳遞給巢狀模板,請將引數標記作為巢狀模板的某個引數的值放置。

  • 示例
    • Template:A 包含“the quick brown {{B|{{{3}}} }} jumped over...”。這將傳遞給 Template:A 的第三個位置引數的值作為 Template:B 的第一個位置引數傳遞,然後返回 B 生成的維基文字作為短語的一部分。
    • Template:A 包含“the quick brown {{B|waldo={{{3}}} jumped over...”。與上面一樣,只是 Template:A 的第三個位置引數傳遞給 Template:B 的命名引數“waldo”。

模板可以呼叫自身,但會停止一次迭代以防止無限迴圈。

Noinclude、includeonly 和 onlyinclude

可以使用幾個標記來控制從模板轉入什麼內容和不轉入什麼內容。這三個標記是 noinclude、includeonly 和 onlyinclude。

noinclude

'noinclude' 標記用於防止模板頁面上的文字轉入其他頁面。這通常用於

  • 文件
  • 適用於模板本身的類別
  • 跨維基連結 到其他維基上的相關模板。

它的用法很簡單

如果這段文字在模板頁面中,這部分將被轉入
<noinclude>但這段文字不會被轉入</noinclude>

includeonly

'includeonly' 標籤與 'noinclude' 標籤相反。includeonly 塊內的文字只有在頁面被轉入時才會被包含,它不會出現在模板頁面本身。這經常用於

  • 適用於轉入頁面的類別
  • 隱藏模板頁面本身出現的雜亂文字或錯誤訊息(通常是由於需要值的引數未定義)

它的用法很簡單

如果這段文字在模板頁面中,這部分將出現在模板頁面和轉入頁面上
<includeonly>但這段文字只會出現在轉入頁面上</includeonly>

onlyinclude

'onlyinclude' 標籤實際上只包含標籤之間的內容;頁面上的其他內容 - 即使是 'includeonly' 標籤內的文字,也會出現在模板頁面上,但不會被包含。這並不常用,但在只轉入一個大頁面中間的一小段文字時可能有用。

它是這樣使用的

如果這段文字在模板頁面中,這部分將在那裡可見,但不會被轉入
<includeonly>這段文字不會在模板頁面上可見,也不會被轉入</includeonly>
<onlyinclude>這部分文字是唯一會被轉入的</onlyinclude>

變數

系統變數採用 {{...}} 的格式,其中括起來的文字始終完全大寫。它們提供來自系統本身的直接資訊:本地日期和時間、有關當前頁面的資訊,甚至有關維基本身的資訊。

系統變數示例
描述 輸入文字 結果(針對此幫助頁面)
頁面名稱 {{PAGENAME}}
{{FULLPAGENAME}}
模板
幫助:模板
當前名稱空間的名稱 {{NAMESPACE}} 幫助
註冊使用者數量 {{NUMBEROFUSERS}} 3,477,764
上次修訂的時間戳 {{REVISIONTIMESTAMP}} 20211117190007

PAGENAME 和 NAMESPACE 變數特別有用,並且經常被用來根據上下文改變模板行為。例如,如果模板包含一個 類別(例如清理模板,它將頁面歸類為需要清理的頁面),它通常會檢查 NAMESPACE 變數以確保討論頁面、使用者頁面或標籤可能意外放置的任何其他地方不會被歸類為需要清理的頁面。

解析器函式和模組

解析器函式是用於執行簡單分支和文字操作的工具。它們接受一個或多個引數,並根據引數返回一個維基文字值。解析器函式有兩種基本形式(區別在於開括號後是否跟一個井號)

  • 核心解析器函式,格式為 {{functionName: parameter | parameter | ... }}。
  • 來自軟體擴充套件的解析器函式,格式為 {{#functionName: parameter | parameter | ... }}。

解析器函式主要用於評估 引數變數,以便在不同的上下文中產生不同的結果。

核心解析器函式通常處理文字操作和特定專案任務。

核心解析器函式示例
描述 輸入文字 結果
將文字轉換為大寫 {{uc: Heavens to BETSY! }} HEAVENS TO BETSY!
將文字轉換為小寫 {{lc: Heavens to BETSY! }} heavens to betsy!
獲取名稱空間名稱 {{NS: 1 }} 討論
獲取 Wikibooks URL {{fullurl: pagename }} //wikibook.tw/wiki/Pagename

擴充套件功能提供了更多面向程式設計的解析器函式。

擴充套件解析器函式示例
描述 輸入文字 結果
在選項之間進行測試 {{#ifeq: yes | yes | Hooray...! | Darn...! }}
{{#ifeq: yes | no | Hooray...! | Darn...! }}
Hooray...!
Darn...!
測試引數是否已設定 {{#if: {{{param|}}} | Hooray...! | Darn...! }} Darn...!
進行計算 {{#expr: ( 27 * 46 / pi ) round 2 }} 395.34

其他型別的計算和字串操作函式,如查詢和替換,可以透過 模組:字串其他模組 執行。這些模組也類似地接受一個或多個引數。

使用 模組:字串 進行字串替換的示例
描述 輸入文字 結果
字串替換 {{#invoke:String|replace| 90 degrees | degrees | ° }} 90 °

其他編輯資訊

  • 如果模板的第一個包含字元是 Wiki 標記字元 :;*# 之一,那麼它將被處理為好像它位於一行的開頭(即使模板標籤不在正確的位置)。這允許在模板中建立各種型別的列表,其中模板可能並不總是位於列表的正確位置。為了避免這種效果,使用<nowiki>#</nowiki>HTML 實體,例如&#58;表示冒號。這在與定義 列表 結合使用時也很有用。
  • 當一個頁面被呼叫以轉入時,該頁面是一個重定向頁面,則將包含重定向目標。

包含模板的頁面的修訂歷史

儲存在 頁面歷史 中的頁面包含維基文字,其中可能包含對模板和影像的引用。當檢視頁面的舊版本時,這些引用將指向模板和影像的當前版本(如果它們仍然存在)。因此,以前組合的頁面不會被重建。

另請參見


華夏公益教科書