Help:Category

Categories, a software feature of MediaWiki, provide automatic indexes that are useful as tables of contents.

Together with links and templates they structure a project.

Summary
Each of the pages in the Category namespace represents a so-called category, a grouping of related pages, and contain an index for the pages of its category. For example, this page belongs to "Category:Help". If you open the "Category:Help" page, you will see a link to this page there.

When a page belongs to one or more categories, these categories appear at the bottom of the page.

The category pages themselves contain 2 parts :
 * at their begining, an optional part may contain text that can be edited, like any other page,
 * at their end, an ever present, automatically generated, alphabetical list of all pages in that category, in the form of links. (In fact, in ASCII order. See Help:Special page).

To assign a category to a page, simply add the link " Category:Category name" to the page's wikitext. The usual place to add it is at the bottom of the page.

To link a category page within a page as a normal wiki link (without adding the page to the category), prefix the link name with a colon. For example: Display Label

New categories can be created before assigning any page to it, in the same way as any other regular page.

Individual wikis may have their own top-level categories, such as w:Category:Contents in Wikipedia.

For a complete list of all categories which have at least one page, see Special:Categories.

For a complete list of all categories, including the ones that don't have any page, see Special:Allpages/Category: (note the colon at the end).

For categories on Meta, see m:Meta:Categories.

Putting an item in a category
A page in any namespace can be put in a category by adding a category tag to the page (by convention, at the end of the page), e.g.:

Category:Category name

You must substitute the actual name of your desired category in place of Category name. For example, to add an article called "Albert Einstein" to the category "People", you would edit the Albert Einstein article and add " Category:People" (no quotes) into its page source somewhere.

This will cause the page to be automatically listed on the associated category page, and it will also create a link in the page to the category page. Category pages are always in the namespace "Category". Pages can be included in more than one category by adding multiple category tags. These links do not appear at the location where you inserted the tag, but at the page margin in a fixed place, depending on the skin (the bottom for MonoBook, the upper right corner for Standard).

Category tags may be placed anywhere in the wikitext, but they are typically added near the end. On Wikipedia the policy is that category tags are put after the main wikitext, but before any interlanguage links.

Category links are displayed in the order in which they occur in the wikitext.

Hidden categories
When __HIDDENCAT__ is put on a category page, that category is not listed on pages in the category. See category:hidden category demo and hidden category demo for an example. However, hidden categories can be made visible by ticking the item  (described by ) in the "Misc" section in the user's preference; either way they can be made visible or invisible through CSS(details needed).

The hidden categories that a page belongs to are listed using the label supplied by the when editing the page.

Hidden categories are automatically added to the category specified by the (This is called a tracking category). In this wiki it is Category:. Within the Category namespace, the hidden categories a category page belongs to are listed separately from the standard (non-hidden) categories it also belongs to, using the label specified by the. [See category:hidden category demo 1.]

For example, suppose a page is categorised under. The page itself does not mention this categorisation unless  is true, in which case the listing   appears below the standard Categories listing (the specific positioning depends on the skin, obviously). Within the Category namespace,  is listed under the   global category. If  has sub-categories, these will each list   under the   listing, appearing below the standard category listing. If  is itself categorised under some higher category, the latter lists it without making any particular distinction (that is to say, hidden sub-categories are listed just as if they were standard sub-categories).

Category page
A category page consists of:
 * editable text
 * list of subcategories; how many there are is also displayed; if there are no subcategories the header and count are not shown. With the Category Tree extension, installed on Wikimedia, one can click "+" to see the subcategories of a selected subcategory.
 * list of pages (showing the full pagename) in the category, excluding subcategories and images; if there are none the header is shown anyway."
 * A raw list without links or headers can be obtained with Special:Export.
 * list of image and other media files with thumbnails; the number of files is given and the first 20 characters of the file name are shown, with an ellipsis if that is not the full name; also the file size is shown. As opposed to the second and third section, this section does not have sub-headers per letter.

The items in the lists all link to the pages concerned; in the case of the images this applies both to the image itself and to the text below it (the name of the image).

The first and second list each have a header for each first character, dispensed with if there are no entries for a header. If no headers are desired, use sort keys all starting with a blank space (see also below).

The number of items in each list is shown at the top of each. There are up to 200 items on a page, for the three types of items together. If the category contains more, the first page contains the first 200 items in the over-all order, for example the subcategories, pages and media files with implicit or explicit sortkeys A-C, etc.

On Meta and Wikipedia a redirect to a category shows the editable text only. To get the full page after being redirected, use the link "Image", or "Category", respectively.

On Commons a redirect to a category gives the full page, but not the subcategories and pages in the redirect page (if that is also a category).

Creating a category page
To create a category page, one can e.g:
 * follow an automatically created link to the category page. Putting this code on any page creates the link.

Category:Category name

or:
 * add a colon in front of the Category tag when you set up the page-creation link, to prevent the software from thinking you merely want to add the page you are working on to the category:



Placing the above text on working page will create the link you can use to edit your category page, and will display the link text as a normal wiki link without adding the page to the category.

Subcategories
Creating subcategories takes only a few additional steps. Adding a category tag to a category page makes the edited category a subcategory of the category specified in the tag.

First create a new category page for the subcategory the same way you would make a regular category. For example, create

Then go to the newly created category page and edit it. Add the category tag for the parent category (e.g. ) to the page.

Then create a new page with a category link to England. In this example, the England category would then be a subcategory of the Country category.

e.g. adding link to the new page like this...

Now to create a subcategory to subcategory England you need to create a new page with a category link to England wikipage and edit it (the category).

e.g. adding link to the page like this...

For a live example see Category:Demo_1 which is a subcategory of Category:Demo.

Sort order
Each of the three lists is in an order according to an implicit sort key, a default sort key for all category tags on a page, or an explicit sort key in a category tag. The implicit sort key is the full pagename, except for subcategories, where the namespace and the colon are not included.

The sort order is based on capitalised names, using alphabetical order, or more precisely Unicode order. The ranges 32–96, 123–127 correspond to ASCII, for more see a table of Unicode characters: !"#$%&'*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'{|}~&#127; Note in particular that "Z" comes before accented / umlauted characters.

Although in Special:Allpages and Special:Prefixindex a blank space within a page name is treated as an underscore, and therefore comes after the capitals, and before the lower case letters, this does not apply in category pages: there a space counts as space. Compare the order of Help:Demo1 and Help:Demo a (both without a specified sort key) on Category:Demo and.


 * See also special characters, Pages starting with a special character, collating.

Sort key
An explicit sort key is specified in the category tag that places the item in the list:

sort_key

For example to add an article called Albert Einstein to the category "people" and have the article sorted by "Einstein, Albert", you would type " ".

Although this is like the syntax for a piped link (and in an edit summary it is interpreted like one), there is a clear difference: the second term in the piped link is an alternative term for the first one, while the sort key is an alternative name for the page in which the tag occurs. Also, a piped link influences the rendering of the page itself, while a sort key affects the rendering of another page.

The displayed name is not changed. The sort keys themselves are not visible on the category page. An explanation of the sort key system used can be useful on the editable part of a category page.

The sort key system should be obvious, otherwise the order seems random and items are hard to find. The system should either be consistently applied to all members of a category, or be such that the listings of members on which it is applied fit in well within the list of members for which no sort key is used. The latter is advisable for large, growing categories with many contributors. See also below.

A common system is starting with the last name, then a comma and a space, and then the first name; note that any additions such as "Jr." should come at the end, otherwise the entry would come before the same without the addition, because a space comes before a comma.

In e.g. w:Category:Denmark, the sort key of a page consists of the keywords, without "Danish" or "of Denmark", "in Denmark", etc.

For the gallery of images in a category the prefix "Image:" is part of the default sort key. E.g. for Image:AlbertEinstein.jpg we can code

to sort the image between Image:D.. and Image:F.. without explicit sort key. If we code

it comes before all images without explicit sort key.

The sort key is case sensitive, so a page with the tag is sorted before one with the tag. This can be inconvenient, requiring a sort key in projects with case-sensitivity of the first character if one wants the A and the a together, but it may also be used to one's advantage: e.g., it allows sorting of the pages into two groups, one put in the range A-Z and one in a-z, using sort keys; see e.g. Category:Demo, where the help pages are put separately by using sort keys with lower-case "h".

In sort keys spaces are relevant; also a double space is distinguished from a single one. For example, " " starting with two blank spaces comes before " " starting with one. Also ~ and * come before letters and digits.

An underscore in a sort key is distinct from a blank space.

To avoid case sensitive sorting results, with Aa coming after AZ, a sort key can be used which is not sensitive to the case of the page. For example, if the bulk of pages use default sorting, a sort key which is all lower case except the first character can be used (for AZ sort key Az), which can be produced automatically with.

See also w:wp:sortkey.

Non-main namespaces
Note that, for example, in a category of templates, by default all templates are listed under the T. To avoid this one can specify a sort key without the namespace prefix in the category tag.

Default sort key
[MW1.10+] It is possible to set a default sort key which is different from by using the magic word  thus:

In the case of multiple default sort key tags, the last one on a page applies for all categories, regardless of the position of the category tags. This also means that a DEFAULTSORT tag in a template, intended for category tags in that template, for categorization of pages calling the template, is not effective if another DEFAULTSORT tag occurs later on these pages, even if it is also "hidden", in another template.

Grouping of pages by using sort keys
If e.g. in a list of people sort keys like "scientist Einstein, Albert" are used then all scientists are listed together under the "s". Unfortunately no separate heading "scientist(s)" is possible, and salesmen would be under the same heading. Alternatively "scientist" can have e.g. code K (to be explained in the editable part of the category page) and the sort key "K Einstein, Albert" is used.

Labels in the list of images
As mentioned above, the first 20 characters of the image name are shown, with dots if that is not the full name. This can be inconvenient, e.g. in commons:Category:Paintings by William-Adolphe Bouguereau many images have a name starting with "William-Adolphe Bouguereau (1825-1905) -", and are therefore all labeled "William-Adolphe Boug..." (see the last section of the category page). The full names are only shown in the hover box and the status bar, depending on the browser.

Therefore, when choosing the name of an image, use the first 20 characters of the name for as much compact information as possible, in particular the kind of information that is not already clear from the thumbnail. Further text can be put after this.

Categories and templates
Templates can make using and maintaining category pages much simpler.

Adding a category by using a template
A template can be used to add a page to a category (one specially for this, or one with another purpose as well), usually by placing the category link inside   tags on the template (e.g.  ).  When the template is transcluded into the page, the category link becomes active, and the page is added to the category page. This is useful for categories that have high turnover or many pages included, like cleanup categories, because:


 * it helps keep category lists up-to-date
 * it provides a consistent format so that pages end up on the correct category page without error
 * it can be easier

Changes to the template, however, may not be reflected immediately on the category page. When you edit an article to add a category tag directly, the list of category members is updated immediately when the page is saved. When a category link is contained in a template, however, this does not happen immediately: instead, whenever a template is edited, all the pages that transclude it are put into the job queue to be re-cached during periods of low server load (but see The Mediawiki Manual, which appears to contradict this, emptying the queue only at periods of high server load). This means that, in busy periods, it may take hours or even days before individual pages are re-cached and they start to appear in the category list. Performing a  to a page will allow it to 'jump the queue' and be immediately re-cached.

If it is necessary to add the template itself to the category page as well, the 'includeonly' tags can be omitted, but this is generally not desired.

Sort keys in templates
A sort key can be passed as parameter to a template and applied to the category link as shown above. Sort keys can also depend on variables (notably PAGENAME) or calls to other templates.

Categorizing templates
Templates themselves can be categorized - without affecting the pages that call them - by putting the category link inside tags (e.g.  ). The 'noinclude' tags specify that the link applies only to the template, and is not included during transclusion.

A similar effect can be achieved with ParserFunctions:, but it is a bit more complex.

Selective category inclusion
Sometimes it is useful to be selective about which pages get added to the category page. For instance, we may want article pages to be added to the category, but not other pages, or we may want the user to select a particular category by passing a parameter. both of these effects (and others) can be achieved.

Specifying a category with a parameter: If the user provides a parameter 'cat=XXX' the page will be categorized at the page   , otherwise it will be categorized at the page   . Calling the template with "cat=" disables putting the page in any category.

Excluding non-article pages:

produces a category tag for pages in the main namespace only.

Categorizing redirect pages
Redirect pages can be categorized. The category tag has to be put in the first paragraph. In the case that the target of the redirect is a section this has to some extent the effect of categorizing the section: through the redirect the category page links to the section; however, unless an explicit link is put, the section does not link to the category.

On the category page, redirects are displayed with class redirect-in-category, so they can be shown in e.g. italics; this can be defined in MediaWiki:Common.css. See also.

Moving a category page
The only way to move a category page is to manually change all category tags that link to the category, and copy the editable part. There is no automatic way to move a category page in the way one moves an article page.

The editable first part of a category can be moved like any other page, but that won't move the subcategories, articles, and images in the second, third, and fourth part (see above). For categories entirely populated through templates (see above) modifying the templates allows to move all affected articles to a renamed category, but with the refresh problem mentioned.

List of all categories
Special:Categories provides an alphabetic list of all categories, with the number of members of each; this number does not include the content of the subcategories, but it includes the subcategories themselves, i.e., each counting as one. Comparing with http://meta.wikimedia.org/w/index.php?title=Special%3AAllpages&namespace=14 :
 * a category without members is not in the former
 * a category that has not been created as a page is not in the latter (in the former it stands out as red link)

Visualizing category tree
Special:CategoryTree enables you to visualize the tree structure of categories. The CategoryTree extension installed on MediaWiki allows in-page display of the tree.

gives

gives

Dapete's category-visualizer Catgraph will render charts of the tree structure.

Applying "Related Changes" to a category
For a category the "Related Changes" feature gives the changes in the pages in the category (according to the current category page, so excluding the pages that have potentially been added and including those that have potentially been removed, through addition or deletion of a template to/from the category, as explained above)
 * for subcategories: the changes in their editable parts only
 * for images (image pages): the changes in their editable parts only.

It does not show the changes in pages linked from the editable parts of the category. Possible workarounds:
 * The editable part can be put in a template. The category tags (which have no effect on Related Changes anyway) can better be kept out of the template, because on the pages of these supercategories the template would be listed under the articles in those categories. Whether interwiki links (with or without interlanguage link feature) are in the template or not does not make a difference, provided that the template is not used elsewhere.
 * Related Changes is applied to a page that calls the category as a template: ; only the editable part is included in the page; the page could be specially created for this purpose and call multiple categories. However, this page will then be listed in the supercategory pages of each category.

As usual (but as opposed to a watchlist) the changes in the corresponding talk pages are not shown.

Applying "Related Changes" to a category, with sufficiently high limits on number and days, is also useful for checking which pages in a category one "watches": they are bolded.

If the category contains pages but does not "exist" as editable page, "Related Changes" can be applied, but no link is supplied, one has to supply the URL oneself. It is more convenient to "create" the page first.

For the "What links here" feature, only the links in the editable part of the page count, not the links to the pages in the category.

Dynamic page list
The DynamicPageList2 extension provides a list of last edits to the pages in a category, or optionally, just the list of pages; the simpler DynamicPageList is installed on Meta and Wikinews; the version DPLforum  is installed on Wikia, see  http://www.wikia.com/wiki/Help:Forums.

Detection of additions to a category
With "Related Changes" one can find pages which are newly in a category due to addition of a category tag or the tag of a template that is in the category. Addition of pages through addition to the category of a template is seen indirectly: one can see the change in the template, and then check which pages call the template. This even shows pages which are only potentially in the category (see above).

Unfortunately there is no similar way to detect a deletion from a category.

Comparison with "What links here"
Backlinks are often used as a by-product of links and inclusions. However, links and inclusion tags can be put specially for the backlinks, just like category tags are.

Thus one can create a kind of "category abc" showing its content with Special:Whatlinkshere/abc without an entry in the category lists on each page in the category. With inclusion this can be done in two ways:
 * rendering nothing. This works regardless of whether abc exists.
 * . This requires creating a blank page to render nothing, or a page with some content to provide an in-page category listing.


 * In the case of links: A redirect corresponds to a supercategory.
 * Advantages of categories
 * Category listings are alphabetical, for "What links here" this typically applies for the first part only, for the pages already linking to the given page at the time of the last rebuilding of the link tables in the database.
 * Categories have an editable part (however, there is anyway a talk page)
 * A category can have multiple supercategories


 * Advantage of a pseudo-category system using backlinks
 * Backlinks can show a tree structure: not only pages and subcategories, but also the contents of the subcategories (for each a list of pages and a list of sub-subcategories) and the contents of the sub-subcategories (for each a list of pages and a list of sub-sub-subcategories), but not the contents of the sub-sub-subcategories, up to three levels are shown.


 * In the case of inclusions
 * also multiple supercategories are possible
 * combined content of subcategories is shown in one list, not grouped by subcategory (the tree structure is not shown, but it can be used by taking the backlinks at a lower node, showing the smaller set)
 * the restriction of three levels (in the case of using redirects) does not apply; for example page Aijkl in the category Aijk in the category Aij in the category Ai in the category A (represented by Aijkl calling template Aijk, etc.) can be shown in the list of pages in category A (the backlinks of template A).

Category considerations
Each page is typically in at least one category. It may be in more, but it may be wise not to put a page in a category and also in a more general category.

Each category, except one top-level category, is typically in at least one higher level category.

The category structure is (ideally) a multi-hierarchy with a single root category. All categories (except root category 1) should be contained in at least one other category, and there should be no cycles (i.e. a category should not contain itself, directly or indirectly). The category structure should reflect a hierarchy of concepts, from the most generic one down to the very specific.

Check the conventions
Check the conventions in a project and make yourself familiar with the categories in use before assigning pages and subcategories to categories and before creating new categories.

It is not obvious whether a page like Amsterdam should be in category City (a description of a member of the category) or Cities (a description of the category as a set of pages). A convention for using one or the other is useful (e.g. on w:en), to avoid ending up with both, with part of the applicable pages in one, and part in the other.

Putting a category tag on a test page, user page, etc. (also if done indirectly by including a template with a category tag) is considered to pollute the category, while regular links from such pages showing up in "what links here" is considered harmless. Therefore:
 * when copying text to such pages, category tags have to be removed; alternatively, convert the category to a link by adding a leading colon after the brackets. For example, "Category:Art" is a link to the category, not an assignment to a category.
 * when including a template that is in a category, do not use the template feature, but use "subst" or copy-and-paste, and delete the category tags.

Alternatives for overviews
In addition to the automatic lists of pages and images, an overview of links to pages or images (by means of thumbnails) can be put in the editable part of a category, just like in any page. This used to be widely used in Wikimedia Commons, but now most of such overviews are moved to article namespaces. See also commons:Commons:Images on normal pages or categories:Vote.

Category intersection, union, etc.
Various MediaWiki extensions allow intersection of categories, union of categories, display of info about the pages in a category, and more:


 * Semantic MediaWiki
 * Main Page - start page
 * Introduction - allows further intersection with sets of pages defined in terms of relations and attributes
 * Inline queries - provides relation- and attribute-related info about the selected pages and in-page display on any page of categories the same or another page is in
 * DynamicPageList extension can be used to:
 * intersection of categories
 * generate a list of all those articles (or a random sample)
 * show metadata of the articles (popularity, date of last update, ..)
 * show one or more chapters of the articles ('transclude' content)
 * show parameter values which are passed to the common template
 * order articles appropriately
 * present the result in a sortable table (e.g.)
 * use multi column output
 * Forum
 * intersection of categories and complements of categories
 * provides the time of last edit for each page

They all also allow further restriction to a namespace; some allow also restriction to a union of namespaces, or the complement of a union of namespaces. They all allow the info to be displayed in any page, not just a separate category page.

See also w:Wikipedia:Category intersection.

Category flattening
Category flattening is displaying also the articles in a category's subcategories, sub-subcategories, etc.
 * category flattening with Semantic MediaWiki