MediaWiki Template: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
<< [[MediaWikiInstallRecord | MediaWiki安裝紀錄]]
[[MediaWikiInstallRecord |MediaWiki]] 模版用法
 
模版用法
* 使內容與樣式分開
* 使內容與樣式分開
* 重複被使用的內容
* 重複使用內容只需要編輯一處


解釋
解釋
Line 13: Line 11:


== Noinclude, includeonly, and onlyinclude比較表 ==
== Noinclude, includeonly, and onlyinclude比較表 ==
{| border="1"
<table width="" border="1">
! 語法區塊
  <tr>
! 編輯「(區塊所在的)頁面A」是否顯示
    <th rowspan="2" scope="col">語法區塊</th>
! 閱讀「頁面A」是否顯示
    <th colspan="2" scope="col">語法區塊(模板)所在的 頁面A</th>
! 閱讀「(嵌入頁面A的)頁面B」是否顯示
    <th colspan="2" scope="col">閱讀(嵌入頁面A的)頁面B時,是否顯示</th>
|-
  </tr>
| Noinclude
  <tr>
|| Yes
    <td><strong>編輯頁面A</strong>時,是否顯示區塊內容</td>
|| Yes
    <td><strong>閱讀頁面A</strong>時,是否顯示區塊內容</td>
|| No (區塊內不顯示, 區塊外會顯示)
    <td>語法區塊<strong>內</strong>的內容</td>
|-
    <td>語法區塊<strong>外</strong>的內容</td>
| includeonly
  </tr>
|| Yes
  <tr>
|| No
    <th scope="row">Noinclude</th>
|| Yes (區塊內外會顯示)
    <td>顯示</td>
|-
    <td>顯示</td>
| onlyinclude
    <td><span style="color:grey;">不顯示</span></td>
|| Yes
    <td>顯示</td>
|| Yes
  </tr>
|| Yes (區塊內會顯示, 區塊外不顯示)
  <tr>
|-
    <th scope="row">includeonly </th>
|}
    <td>顯示</td>
    <td><span style="color:grey;">不顯示</span></td>
    <td>顯示</td>
    <td>顯示</td>
  </tr>
  <tr>
    <th scope="row">onlyinclude</th>
    <td>顯示</td>
    <td>顯示</td>
    <td>顯示</td>
    <td><span style="color:grey;">不顯示</span></td>
  </tr>
</table>


== Noinclude, includeonly, and onlyinclude ==
== Noinclude, includeonly, and onlyinclude ==
Line 67: Line 77:
* [http://en.wikipedia.org/wiki/Wikipedia:Transclusion Wikipedia:Transclusion]
* [http://en.wikipedia.org/wiki/Wikipedia:Transclusion Wikipedia:Transclusion]


[[Category:MediaWiki]]
[[Category:MediaWiki]] [[Category:Templates]]

Latest revision as of 11:40, 14 January 2019

MediaWiki 模版用法

  • 使內容與樣式分開
  • 重複使用內容只需要編輯一處

解釋

  • 語法區塊: noinclude語法區塊,是指包含noclude語法及<noinclude> 及 </noinclude> 區塊內的內容。
  • 嵌入: 頁面B嵌入頁面A內容。ex: (頁B)「建立多媒體說明文件的軟體」嵌入了(頁A)「畫面擷取」的內容。


Owl icon.jpg 如何嵌入其他頁面內容: 如果在頁面B嵌入頁面A內容,那麼編輯頁面B時,輸入 {{:頁面A頁面名稱}}

Noinclude, includeonly, and onlyinclude比較表[edit]

語法區塊 語法區塊(模板)所在的 頁面A 閱讀(嵌入頁面A的)頁面B時,是否顯示
編輯頁面A時,是否顯示區塊內容 閱讀頁面A時,是否顯示區塊內容 語法區塊的內容 語法區塊的內容
Noinclude 顯示 顯示 不顯示 顯示
includeonly 顯示 不顯示 顯示 顯示
onlyinclude 顯示 顯示 顯示 不顯示

Noinclude, includeonly, and onlyinclude[edit]

Noinclude

在(頁面A) <noinclude> 及 </noinclude> 區塊內的任何內容,不嵌入到頁面B。區塊外內容,則會嵌入。

  • 應用:
    • 我在頁A放了連結,可以連回頁B。但是我不想要嵌入頁A內容的頁B內,還會看到「連回頁B」。因此頁A的「連回頁B」的連結,需要放到noinclude語法區塊內。
    • 針對模版用法的解釋說明,可放到noinclude語法區塊內 ex: Wikipedia小作品模版


includeonly

在(頁面A) <includeonly> 及 </includeonly> 區塊內及區塊外的任何內容,一起嵌入到頁面B。

  • 應用: 紀錄片公園的授權資訊(類別:Cc-by-nc-nd)是經由模板:Cc-by-nc-nd嵌入。但是「模板:Cc-by-nc-nd」不應該被分類到「類別:Cc-by-nc-nd」,所以類別部分應該放到includeonly區塊內。


onlyinclude

在(頁面A) <onlyinclude> 及 </onlyinclude> 區塊內的任何內容,嵌入到頁面B。區塊外則不嵌入。如果頁面A同時有onlyinclude及includeonly兩種語法區塊,也僅會嵌入onlyinclude區塊。

  • 應用:
    • 頁面B放頁面A的簡介及連結,那麼可以把頁面A的簡介文字放到頁面A內的onlyinclude區塊。
    • 母頁面B(ex)要嵌入頁面A1(ex), A2(ex)等子頁面的內容,而子頁面又要連回頁面B。子頁面的主要內容可放到onlyinclude區塊。



相關資料