模組:PJBSClass/main/doc
外观

< Module:PJBSClass | main
这是Module:PJBSClass/main的文档页面
![]() | 此頁面是Module:PJBSClass/main的模块文档。 此頁面可能包含了模板的使用說明、分類和其他内容。 |
本模組的功能:
- 透過調用Module:PJBSClass/page間接調用Module:PJBSClass
- 讀取{{PJBS}}中的評級值
- 自動透過命名空間盼判斷評級值
- 進階自動評級
- 透過解析頁面內容判斷頁面是否為軟重定向
- 透過解析頁面內容判斷頁面是否為消歧義
- 判斷專題橫幅是繼承{{PJBS}}中的評級值還是自定評級值並加入維護分類
- 輔助{{PJBS}}中的一些與專題評級值相關的功能
用法
本模組主要用於讀取頁面中定義於{{PJBS}}或專題橫幅中的評級值,或自動根據命名空間或維基代碼判斷評級。
判斷種類 | 判斷依據 | 對應的評級 |
---|---|---|
重定向 | 頁面物件的isRedirect 欄位。
| ![]() |
軟重定向 | 軟重定向模板(如{{軟重定向}}) | ![]() |
沙盒 | 沙盒模板(如{{Sandbox}}) | ![]() |
消歧義 | 消歧義模板(如{{消歧義}}) 以及相關魔術字(如 __DISAMBIG__ )
| ![]() |
命名空間 | 前綴 | 對應的評級 |
---|---|---|
模板 | Template: | ![]() |
模組 | Module: | ![]() |
分類 | Category: | ![]() |
文件 | File: | ![]() |
草稿 | Draft: | ![]() |
主題 | Portal: | ![]() |
專題 | PJ: | ![]() |
用戶 | User: | ![]() |
說明 | Help: | ![]() |
MediaWiki | MediaWiki: | ![]() |
字幕 | TimedText: | ![]() |
媒體 | Media: | ![]() |
特殊 | Special: | ![]() |
模組中的主要函數
- getClass
-
- 模組調用:
p.getClass(class_name)
- 模板調用:
{{#invoke:PJBSClass/main|getClass| class_name | auto=yes/no | inheritance=yes/no | demo=yes/no }}
- 模組調用:
- 間接調用Module:PJBSClass#getClassByPage。
- 取得所在頁面的評級,可以輸入一個評級值(class_name)作為覆蓋與否的判斷依據。auto為是否要以自動判斷的評級為優先;inheritance為是否要以繼承值為優先;demo為是否為模板演示。
- getClassAuto
-
- 模組調用:
p.getClassAuto(page_name, class_default, demo)
- 模板調用:
{{#invoke:PJBSClass/main|getClassAuto| class_name | class=class_default | demo=yes/no }}
- 模組調用:
- 間接調用Module:PJBSClass#getAutoClass,並額外加入了從維基代碼判斷評級的功能,見維基代碼可判斷的評級值。
- 自動判斷名為「page_name」頁面的評級,若「page_name」未輸入則判斷所在頁面的評級。若無法判斷則回傳「class_default」。
- listProjects
-
- 模組調用:
p.listProjects(html, code, comma, max_num)
- 模板調用:
{{#invoke:PJBSClass/main|listProjects| html | code=code | comma=comma | tail=tail | max_num=max_num }}
- 模組調用:
- 列舉「html」中所有專題橫幅的專題,主要由{{PJBS}}調用。「code」為輸出的格式,
$1
代表專題名稱、$2
代表分隔符號。「comma」為分隔符號。「tail」為自動加在尾端的文字,預設為專題
。「max_num」為最大列舉數量。 - class_json
-
- 模組調用:
p.class_json()
- 模板調用:
{{#invoke:PJBSClass/main|class_json}}
- 模組調用:
- 提供Module:PJBSClass#{{Module:PJBSClass/page}}轉換Lua到JSON的函數。此函數沒有參數,僅回傳所在條目
mw.loadData("Module:PJBSClass/page")
的JSON結果。模板調用應使用{{Module:PJBSClass/page|json=yes}}
。 - subjectPageTitle
-
- 模組調用:
p.subjectPageTitle(page_name)
- 模板調用:
{{#invoke:PJBSClass/main|subjectPageTitle| page_name }}
- 模組調用:
- 無論名為「page_name」頁面是否是討論頁都會回傳其所對應之主要頁面的名稱。如果「page_name」不是討論頁,則回傳原頁面名稱。如果「page_name」未輸入則輸出所在頁面(無論是否是討論頁)所對應之主要頁面的名稱。如果所在頁面不是討論頁,則回傳所在頁面名稱。
模組中的元函數
- _getClass
- _checker
- _getProjects
- checkClassInput
判斷頁面屬性函數
- is_softredirect
- is_disambiguation
- is_sandbox
可供其他模組調用的私有函數
- _re_softredirect_template
- _re_disambiguation_title
- _re_disambiguation_template
- _re_sandbox_template
- _remove_wikiproject_flag