跳至內容

模組:PJBSClass/doc

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

此頁面為 Module:PJBSClass 的說明文件

本模組為互助客棧提議設立通用評級的配套模組。為了實現「新的模版可以單獨給條目一個總體的品質評級,各個WikiProject可以直接繼承這個quality assessment,也可以搞自己的評級」中的「繼承評級」項目,因此設計了用於讀取{{PJBS}}所輸入之評級的模組。

為了避免重複運算,使用時請使用Module:PJBSClass/main來讀取評級。Module:PJBSClass/main會透過使用mw.loadData("Module:PJBSClass/page")來調用本模組,讓評級的計算在每個頁面只會計算一次。也因此,本模組只能讀取第一個{{PJBS}}所輸入之評級,如放置了多個{{PJBS}}模板,後面的{{PJBS}}評級內容將會被忽略。

用法

不建議直接調用本模組,應透過Module:PJBSClass/main中的getClass函數來獲取評級值。下文僅簡介本模組中函數的功能。

本模組中的函數

getAutoClass
模組調用:p.getAutoClass(page_name, input_class)
模板調用:{{#invoke:PJBSClass|getAutoClass| page_name | class = input_class }}
自動判斷頁面名稱為「page_name」之頁面的評級。如無法判斷則返回「input_class」評級值。
如果「page_name」為空或未輸入,則自動判斷當前頁面的評級。
getClassByPage
模組調用:p.getClassByPage(page_name)
模板調用:{{#invoke:PJBSClass|getClassByPage| page_name }}
從頁面名稱為「page_name」之頁面的討論頁中{{PJBS}}或專題橫幅中讀取評級值。
如果「page_name」為空或未輸入則讀取當前頁面對應的討論頁。
getWPBSTemplateContent
模組調用:p.getWPBSTemplateContent(wikitext)
模板調用:(不支持)
從「wikitext」中擷取{{WikiProject banner shell}}代碼。
getClassByWikitext
模組調用:p.getClassByWikitext(wikitext, flag)
模板調用:{{#invoke:PJBSClass|getClassByWikitext| wikitext }}
從未解析的維基代碼「wikitext」中讀取{{PJBS}}或專題橫幅中的評級值。「flag」為true時,會多返回「有無找到{{PJBS}}或專題橫幅」的布林值(限Lua調用)。

本模組的子模組可以透過{{Module:PJBSClass/page}}直接調用。

  • 用法{{Module:PJBSClass/page}}:回傳模板所在條目輸入於{{PJBS}}中的評級原始值或自動判斷的評級值。
  • 用法{{Module:PJBSClass/page|頁面名稱}}:回傳輸入於指定頁面名稱{{PJBS}}中的評級原始值或自動判斷的評級值。
  • 用法{{Module:PJBSClass/page|json=yes}}:直接回傳所在條目mw.loadData("Module:PJBSClass/page")JSON結果。
    • 例如{{Module:PJBSClass/page|json=yes}}→「{"is_ga":false,"is_softredirect":false,"is_disambiguation":false,"is_fm":false,"is_fa":false,"has_WPBS":false,"is_sandbox":false,"is_fl":false,"is_auto":true,"is_sia":false,"class":"模組"}
      {
      "is_ga":false,
      "is_softredirect":false,
      "is_disambiguation":false,
      "class":"模組",
      "is_fa":false,
      "has_WPBS":false,
      "is_sia":false,
      "is_fl":false,
      "is_auto":true,
      "is_fm":false,
      "is_sandbox":false
      }