This template puts the page on which it's used ({{FULLPAGENAME}}) into appropriate categories, based on certain page-naming and page-categorization conventions.

Usageसंपादित करें

When used without parameters, it

  • places subpages of a book in the book's category (श्रेणी:पुस्तक:{{BOOKNAME}}) and sorts them by chapter name.
  • places a book's templates in the book's template category (श्रेणी:पुस्तक:{{BOOKNAME}}/साँचे). This only does the right thing if a book's templates begin with  साँचा:{{BOOKNAME}} .
  • places a book's template category in the book's category and in  श्रेणी:पुस्तक-विशेषक साँचे .
  • places any other category in its parent, sorted by the category's last name. The parent has the same name except removing everything from the last slash on; and the last name is the part that was removed after that last slash. For example, Category:My Book/Images  would go in  Category:My Book  with sort key  Images .

Parametersसंपादित करें

Optional parameter  filing=deep  changes the behavior on book pages, so that a book page with more than one slash in its name is placed in a subcategory of the category where its parent page would be placed, sorted by the page's last name. For example, using  {{BookCat|filing=deep}}  on page  My Book/Maps/Asia  would put that page in  Category:My Book/Maps  with sort key  Asia .

Optional parameter  template-filing=deep  changes the behavior on template pages to deep filing (so  Template:My book/Maps/Asia  would go in  Category:My book/Templates/Maps).

Optional parameter  sort or sortkey specifies a sort key to be used for categorization instead of relying on {{BOOKSORTKEY}}.

Optional first unnamed parameter is a full page name to use instead of the {{FULLPAGENAME}} of the current page.

An alternative template {{BookCat/diagnose}} reports the output of {{BookCat}} (with or without parameters) as an inert string, rather than categorizing the current page.

Eamplesसंपादित करें

Internalsसंपादित करें

This template itself only contains the logic to sort out the identity of the target page; deducing the appropriate categorization is then delegated to {{BookCat/core}}. As of this writing, parameters assembled here are namespace, pagename, fullpagename, and sortkey; the first unnamed parameter is removed, and all other parameters are passed through to the subtemplate.

See alsoसंपादित करें