Template:Infobox/doc

Usage
This template takes as its one parameter the name of a category, and generates a potentially customized infobox for that category. Customizations for any given category are specified in a simply formatted page for that category. Customizations do not involve passing additional parameters to infobox, and do not involve hacking esoteric internals of templates.

For example,  would produce the infobox on the right.

To specify customizations for some category, create a page called  , containing a call to template infobox table with parameters to that template specifying the customizations for the Foobar infobox. Template infobox table formats these parameters into a wikitable; see for example the customization page for Tuvalu, here.

If there is no customization page for the named category, customizations are read from the table at infobox/default.

(When editing a page containing a call, the Foobar infobox customization page appears under "templates used" even if the customization page has not been created.)

Optional parameter  overrides the name of the customization table; for example, Eswatini uses Category:Eswatini with customization page Template:Infobox/lookup/Swaziland.

Setting up infoboxes
If you're converting an existing infobox template to use infobox, check first to see whether the old version of the template categorized articles that used it, and if it did, check all the transcluding articles to make sure they are all directly categorized, so that converting the template won't cause those articles to drop out of the category(-ies).

Supposing the infobox template has the same name as the category it represents, cut-and-paste the following as the content of the template page: An infobox for and its news. ''Are newer articles not showing? [ Refresh]''

Customize this infobox .

Replace  with some subcategory when appropriate, such as. Put any interwiki markup immediately after the category and before the.

When you preview (or save) the template page, at the bottom of the displayed documentation is a line "Customize this infobox here", with a wikilink on "here". If the customization page does not already exist, following this link provides a default setup for you, with sample contents for you to change. The default customization content provided contains not only a suitable table with customization fields, but also a sample infobox so anyone editing the customization page can see from the page preview what their customizations look like.

We usually fully protect the infobox template itself, as customization takes place on the customization page.

The customization page typically follows the following pattern:

Available fields are documented at infobox table.

Internals
This template uses subtemplates to decompose its operation into manageable subtasks. The main template is responsible only for checking for a customization file and, if found, parsing it. The result, or non-result, of this parse is passed on to infobox/p1.

This template does not need to know the set of parameters used to customize the infobox. Those parameters are not passed to this template, and this template can parse a customizing table and pass on whatever parameters are specified by the customizing table, leaving it to subtemplates to worry about whether the parameters provided are valid. For explanations of the valid customization parameters, and how to change the set of them if necessary, see infobox table.

When parsing the customization file, square brackets  and angle brackets   are removed, isolating markup functions involving those characters in the central template; however, pipe characters   are left intact to allow customization of an image by means of field-display fields embedded in the image name, such as.