維基專題:用戶警告/Help:模板代碼
一般設計指引
嚴重級別
每個模板系列包含了四個代表著遞增的嚴重性的模板,指明了從友善到嚴厲的語氣。這並沒有明確指出時間上的先後順序,一個用戶可以簡單地根據其所認為的嚴重程度選擇一個級別。例如,測試的模板系列為:測試1、測試2、測試3、測試4。
- 提醒:假設該用戶不懷惡意——禮貌地指導他去使用沙盒編輯和/或閱讀相關的幫助和方針頁面,以表示歡迎;
- 注意:無法假設用戶是否懷有惡意——禮貌地請求其停止破壞並提及後果,引導他去沙盒編輯;
- 警告:假設用戶存在主觀惡意——嚴厲制止並打消其念頭;
- 最後警告:假設用戶存在主觀惡意——強行制止並打消其念頭,做出最後警告。
文明
不考慮模板的嚴重級別的話,對其他用戶進行警告時應該嚴守文明(即使是對於最具危害性的破壞)。記住,當你使用一個警告模板的時候,你是以維基百科的名義這樣做的。參見Wikipedia:不要傷害新手,Wikipedia:文明,Wikipedia:禮儀。
衍生模板
模板的派生版本(以新的名義出現的一個模板的一個不遵循標準的變種)不應該被包含在規範化模板的列表里或者在文檔內被提及。儘管用戶可以自由地創建、使用不遵循標準的模板,這類模板仍不應當為該專題所承認。
模板代碼編寫指引
模板分類
模板頁面
用戶警告模板應當被歸類到Category:用戶警告模板中,如果某一模板是到另一個模板的重定向頁面,則應當通過分類關鍵詞「重定向」被歸類。用戶封禁模板應當被分類到Category:封禁模板中,其分類關鍵詞則視情況定為「暫時」或「無限期」。分類標籤應當以noinclude語法標記到模板頁面上。
<noinclude> [[Category:用户警告模板]] [[Category:封禁模板|无限期]] </noinclude>
用戶討論頁
任何將它被應用到的頁面添加進一個分類的模板,都應當用分類參數前後包圍住分類標籤。如果模板使用<noinclude>
標籤,請注意將參數放置在此標籤的裡面。這樣,在一個頁面(例如討論頁面或列表頁面)上使用模板時,不必通過加入未指定的分類參數值({{template|category=}}
)來添加該頁面到一個分類里。
<includeonly>{{category|[[Category:封禁模板|无限期]]}}</noinclude>
模板參數
默認值
幾乎每一個模板都有一個默認值,這樣,錯誤使用模板時,不會使模板效果大打折扣。你可以通過使用管道語法({{{1|default value}}}
)來設置一個參數的默認值。例如,下面的模板採用了一個希望用戶提供正確的代詞的參數:
{{{1|He or she}}} is cool.
使用{{template|He}}
來提供代詞時,模板將會變成"He is cool";使用{{template}}
忽略掉參數的話,模板將會顯示默認值並變成
"He or she is cool"。
具名語法
當一個模板的參數可能會被加入能夠破壞模板的符號(尤其是「|」管道符號和「=」等號)時,一個具名語法能夠阻止這種情況的發生。這種情況下,具名和非具名語法是可以依需要共存的。例如,一個Wikilink模板可以通過「嵌套」(將參數放在其他參數的默認值中)的方法來同時指定一個名字和一個數字到參數當中:
[[{{{link|{{{1|{{{default value}}}}}}]]
使用{{template|article}}
足夠容易理解,並且會變成[[article]]
。但是,一些符號如果這麼用的話會破壞掉模板。這種情況下,需要具名語法:{{template|link=article|name}}
,這樣子會變成 [[article|name]]
。
嵌套式替換引用
任何包含模板、魔術變量(英語:magic variables)或者是解析器函數的模板都應該在一個適合「Subst:」修飾符放置的地方包含一個可選的「subst」參數。這允許用戶能夠簡單地替換引用一個模板和所有嵌套模板。例如,請看一下下面的模板代碼:
现在是{{{{{subst|}}}CURRENTYEAR}}年.
嘗試使用 {{subst:template}}
替換引用此模板將會顯示成"现在是{{CURRENTYEAR}}年",導致被嵌套的代碼無法被替換引用。使用替換引用變量({{subst:template|subst=subst:}}
)的話,此模板將會顯示成"現在是2024年"。
封禁模板的CSS代碼
維基百科允許註冊的用戶在user:username/skin.css建立一個個人樣式表,「username」是用戶名,「Skin」是正在使用的頁面樣式(通常是monobook)。為了幫助用戶充分利用這一功能,封禁模板應當使用「user-block」類,以CSS格式編寫。
<div class="user-block">template message</div>
用戶如果想這樣做的話,他們可以通過將CSS代碼加入他們的用戶樣式表的方法,來自訂所有封禁模板的外觀。例如,以下的代碼加入了襯著紅色背景的白色文本。
* .user-block { background:#C00; color:#FFF; }
對列表的兼容性
所有的用戶警告與封禁模板都應該原生兼容列表。為了最高的交涉效率,有多個警告的討論頁有時會被組織成結構化的按照日期編排的列表(見導引)。由於維基百科將維基語法解析為HTML代碼的方式,列表的項目是不應該包含換行符號的。
有換行符號的模板將會打亂任何它們被放置的列表:第一段將會在列表當中,其他的會被擠出去,任何在列表當中的接下來的模板將會進入一個新的列表。直接使用HTML段落語法的話,維基百科的段落解析將會被繞開,多段落的模板就可以不出差錯地加入到組織後的警告列表里了。
<p>段落1。</p><p>段落2。</p><p>段落3。</p>
為了避免換行符產生的問題,模板必須只有單獨的一個代碼行。但是,編輯視圖下,對於人類來說這是十分晦澀的。為了保證可讀性,HTML注釋可以插入進去,以模仿出換行的效果。儘管這看起來和兩欄的代碼行不太協調,但是在應用在實際的段落中的時候,注釋會變得不那麼占地方。
<p>段落1。</p><!-- --><p>段落2。</p><!-- --><p>段落3。</p>