Template:Category handler: Difference between revisions

From Vigyanwiki
Template>Davidgothberg
(Blacklist check moved outside {{/numbered}}. Added "basic usage check", so parameter 1 can behave normally when advanced usage. Added the evil "all" parameter that categorizes in all namespaces.)
m (1 revision imported from alpha:Template:Category_handler)
 
(20 intermediate revisions by 11 users not shown)
Line 1: Line 1:
{{#if:
{{#invoke:Category handler|main}}<noinclude>
  {{#ifeq: {{lc: {{{nocat|}}} }} | true
  | dontcat    <!--"nocat=true", don't categorize-->
  }}{{#ifeq: {{lc: {{{categories|}}} }} | no
  | dontcat  <!--"categories=no", don't categorize-->
  }}{{#switch: {{lc: {{{category|¬}}} }}
  | no            <!--"category = no"-->
  |    = dontcat  <!--"category =", defined but empty-->
  }}  <!--Else "category = ¬" or not defined or "yes" or other data-->
 
|  <!--Don't categorise (result was "dontcat" or "dontcatdontcat" and so on)-->
| <!--Check blacklist-->
  {{#switch:
    {{#ifeq: {{lc: {{{nocat|}}} }} | false
    |  <!--"nocat=false", skip blacklist check-->
    | {{#ifeq: {{lc: {{{categories|}}} }} | yes
      |  <!--"categories=yes", skip blacklist check-->
      | {{#ifeq: {{lc: {{{category|}}} }} | yes
        |  <!--"category=yes", skip blacklist check-->
        | {{cat handler/blacklist| page = {{{page|}}} }}  <!--Check blacklist-->
        }}
      }}
    }}
  | hide = <!--Blacklist returned "hide", don't categorize-->
  | #default  =
    <!--Check if any namespace parameter is defined-->
    {{#ifeq: h0#384!5nea+w9 | {{{all| {{{main| {{{talk| {{{user| {{{wikipedia| {{{file| {{{mediawiki| {{{template| {{{help| {{{category| {{{portal| {{{other| h0#384!5nea+w9 }}} }}} }}} }}} }}} }}} }}} }}} }}} }}} }}} }}}
    | <!--No namespace parameters fed, basic usage-->
      {{namespace detect
      | main = {{{1|}}}
      | file = {{{1|}}}
      | help = {{{1|}}}
      | category = {{{1|}}}
      | portal = {{{1|}}}
      | page = {{{page|}}}  <!--For testing and demonstration-->
      }}
    | <!--Namespace parameters fed, advanced usage.
          If "data" is a number, return the corresponding
          numbered parameter, else return "data".  -->
      {{{all|}}}{{cat handler/numbered
      | 1 = {{{1|}}}
      | 2 = {{{2|}}}
      | 3 = {{{3|}}}
      | 4 = {{{4|}}}
      | 5 = {{{5|}}}
      | 6 = {{{6|}}}
      | 7 = {{{7|}}}
      | 8 = {{{8|}}}
      | 9 = {{{9|}}}
      | 10 = {{{10|}}}
      | data =
        <!--Check what namespace, and return the data for it.
            Respecting empty parameters on purpose.  -->
        {{namespace detect
        | main = {{{main| {{{other|}}} }}}
        | talk = {{{talk| {{{other|}}} }}}
        | user = {{{user| {{{other|}}} }}}
        | wikipedia = {{{wikipedia| {{{project| {{{other|}}} }}} }}}
        | file = {{{file| {{{image| {{{other|}}} }}} }}}
        | mediawiki = {{{mediawiki| {{{other|}}} }}}
        | template = {{{template| {{{other|}}} }}}
        | help = {{{help| {{{other|}}} }}}
        | category = {{{category| {{{other|}}} }}}
        | portal = {{{portal| {{{other|}}} }}}
        | other = {{{other|}}}  <!--Namespace special or a new namespace-->
        | page = {{{page|}}}  <!--For testing and demonstration-->
        }}
      }}
    }}
  }}
}}<noinclude>
 
{{pp-template}}
{{documentation}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
<!-- Add categories to the /doc subpage, and interwikis to Wikidata. -->
</noinclude>
</noinclude>

Latest revision as of 17:23, 31 December 2022

Template documentation