Template:Sfnm/doc

Revision as of 13:00, 31 August 2025 by Wikipedia>Sophivorus (Mark years as required too)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

__EXPECTED_UNCONNECTED_PAGE__

This is a companion template to {{Sfn}}; see there for a more general introduction. Unlike {{Sfn}}, however, {{Sfnm}} supports the inclusion of multiple sources in a single footnote.

Usage

Each of the several sources listed in the template is identified using a set of numbered (n) parameters where the first source is numbered 1, the second 2, etc. There is no set limit to the number of sources that may be listed in a single template though editors should be aware that readability suffers with an increase of the number of sources.

The following markup: {{Sfnm|1a1=Smith|1a2=Jones|1a3=Johnson|1y=2005|1p=15|2a1=Jones|2a2=Johnson|2a3=Smith|2y=2004|2p=50}} will produce the following footnote: [1]

Parameters

The following parameters are used where n always begins at 1, increases by one for each successive source; n has no set limit.

  • |nam= – source n author (required) – has the form: nam where n is the source number, a indicates that this is an author parameter, and m identifies the mth author of source n → |1a1= is first source author one, |5a4= is fifth source author four; author numbers (m) greater than 4 are ignored;
  • |ny= – year – accepted formats are: YYYY, n.d. or nd (no date), c. YYYY, YYYY–YYYY (endash separator); all dates may have a single lowercase letter disambiguator suffix; see sfn §More than one work in a year
  • |np= – in-source page cited
  • |npp= – in-source pages cited
  • |nloc= – in-source location when not pagination – appended to |np= or |npp= if present
  • |nref= – alternate reference identifier used to link source to its full citation; the special keyword none inhibits creation of a link from source to its long form reference
  • |nps= – source postscript – terminal character or text; defaults to none; the special keyword none (used by {{sfn}}) is silently ignored
  • |ps= – postscript – template's final terminal character or text; defaults to period (.); the special keyword none inhibits the postscript character; yields to |nps= where n is the last source
  • |group= – reference group for the footnote

When a source has a single author, use of positional parameters for author and year is supported; both |author and |year are required when there is more than one of these single-author sources listed in the template: {{Sfnm|Smith|2005|1p=15|Jones|2004|2p=2}} which will produce the following footnote: [1]

  1. ↑ Smith 2005, p. 15; Jones 2004, p. 2.

Literature cited

  • Jones, John (2004). "My Journal Article". Journal of Important Studies. 509 (13): 10–23.
  • Jones, John; Johnson, John; Smith, John (2004). Our First Book.
  • Smith, John (2005). "Another Journal Article". Journal of Important Studies. 510 (14): 100–134.
  • Smith, John; Jones, John; Johnson, John (2005). Our Second Book.

Template data

Creates multiple short author–date citation.

Template parameters

This template prefers inline formatting of parameters.

ParameterDescriptionTypeStatus
First author of the first source1a1 1

no description

Stringrequired
Second author of the first source1a2

no description

Stringoptional
Third author of the first source1a3

no description

Stringoptional
Fourth author of the first source1a4

no description

Stringoptional
Year of the first source1y 2

no description

Numberrequired
Page cited of the first source1p

no description

Numberoptional
Pages cited of the first source1pp

no description

Example
2-9
Stringoptional
First author of the second source2a1 3

no description

Stringrequired
Second author of the second source2a2

no description

Stringoptional
Third author of the second source2a3

no description

Stringoptional
Fourth author of the second source2a4

no description

Stringoptional
Year of the second source2y 4

no description

Numberrequired
Page cited of the second source2p

no description

Numberoptional
Pages cited of the second source2pp

no description

Example
2-9
Stringoptional

See also

The {{harvnb}} and {{r}} or other similar templates can be manually bundled in a single footnote

General templates that create lists not necessarily designed for references or footnotes can be found at Category:List formatting and function templates.

Template:Sfnm invokes Module:Navbox using Lua.

Usage

This template can be used to make a standard navigation box. It is intended for use within another template that standardises the title and contents of the box (see Template:ShipNavbox). This template SHOULD NOT be used directly within articles, as it creates a maintenance burden to do so whenever the contents of the box have to be updated.

The purpose of this template is to standardise the attributes of all navigation boxes, for example, their colours and other CSS attributes. The template is fairly simple, and could be extended to add other features in the future. Using this template allows changes to be implemented much quicker and easier than editing each template separately.

Syntax

{{navbox
|state      = uncollapsed, collapsed, plain, autocollapse (default)
|name       = mandatory - name of the template
|style      = optional - style for the whole table
|title      = mandatory - navbox header
|gtitleN    = optional - title of N-th group of items
|styleN     = optional - style for groupN; i.e. text-align
|groupN     = mandatory - list of groups of items
|fstyle     = optional - style for footer ; i.e. text-align
|footer     = optional - navbox footer
}}
  • Groups: Currently there is no technical limit to the maximum number of groups.
    • Groups of items can be added as parameters: group1, group2, group3, ... up to groupN.
  • Group title: Each group has its own title parameter: gtitle1, gtitle2, gtitle3, ... up to gtitleN. Note that the default width for the first column is 15%.
  • Group style: Style may also be customised to each group in: style1, style2, style3, ... up to styleN.
    • Note that neither the title nor the items have any wiki-links built into the template. As a result, users of the template are free to use wiki-links as they wish.
  • Line breaks: Line-breaks (<br />) are unnecessary, as text wrapping is done automatically by the template. This also includes links and text in gtitleN and groupN.
  • Bullets: Create unordered lists with lines beginning with *.
  • Pipe links: Because of the nature of template syntax, it may be necessary to use Template:! ({{!}}).

States

  • Autocollapse: By default, the state of a navbox is "autocollapsed". This means that if the number of navboxes in a page exceeds the maximum allocation of the collapsible navboxes, then the remaining navboxes are collapsed automatically. For more information (or to change the setting), see MediaWiki:Common.js.
    • Currently, the autocollapse allocation is 2 (see MediaWiki:Common.js). This means that if there are 3 navboxes in a page, the third and subsequent navboxes will be collapsed automatically.
  • Uncollapsed: Forces the navbox to be displayed.
    • All of the navboxes in this documentation are in the uncollapsed state.
  • Collapsed: The reverse of uncollapsed. Forces the navbox to be hidden instead.
    • Navboxes with a height of more than 300 pixels will also be collapsed automatically. For more information (or to change the setting), see MediaWiki:Common.js.
  • Plain: Removes the "show/hide" link.

Sub-groups

  • For larger navboxes, it may be necessary to include sub-groups within a particular group of items. It is also possible to collapsible navboxes within the parent navbox, see Collapsible sub-groups.
  • To create sub-groups within {{navbox}}, certain parameters are to be included:
    • The parent navbox group (i.e. group2 in the example below) requires the type parameter (gtype2 = Subgroup).
    • The nested navbox (sub-group) requires the inclusion of the sub-group parameter (subgroup = yes). This enables the template to differentiate between the sub-group and the parent navbox.
{{navbox
|name    =
|title   =
|gtitle1 =
|group1  =
|gtitle2 =  
|gtype2  = Subgroup (mandatory)
|group2  = 
  {{navbox
  |subgroup = yes (mandatory)
  |gtitle1  = 
  |group1   =
  |gtitle2  = 
  |group2   = 
  }}
}}

Collapsible sub-groups

  • For extremely long navboxes, it is recommended to use collapsible navboxes within the parent navbox. Further sub-groups can then be added to these collapsible navboxes.
  • To create collapsible sub-groups within {{navbox}}, these parameters need to be included:
    • The parent navbox is almost always uncollapsed (state=uncollapsed).
    • The parent navbox group (i.e. group1 in the example below) requires the type parameter (gtype1 = Subgroup).
    • The nested collapsible navbox requires the inclusion of the collapsible parameter (collapsible = yes). This enables the template to differentiate between the collapsible navbox and the parent navbox.
    • The nested collapsible navbox is forcefully collapsed (state=collapsed).
{{navbox
|state  = uncollapsed
|name   = 
|gtype1 = Subgroup
|group1 = 
  {{navbox
  |collapsible = yes
  |state   = collapsed
  |title   = 
  |gtitle1 = 
  |group1  = 
  |gtitle2 = 
  |group2  = 
  }}
}}

Use of images

  • The use of images in navboxes is permitted, but please resize the images to keep them small. Inventory-sized images (25-30 pixels) are recommended.
  • Please use {{t|plink}} to create links with images. Use {{t|plink}} for any case where text is not desired after the link. It functions the same as {{t|plink}}, but it does not produce a wikilink in text. Use {{t|chatl}} to link chatheads. These templates create links for both the image and text (except for {{t|plink}}) using far less wikicode than the standard syntax.

Link and file share the same name

{{plink|Item}}

File name differs from the link

{{plink|Item|File}}

Link and file share the same name, but different text is desired to display

{{plink|Item|alt=Text}}

File name differs from the link and different text is desired to display

{{plink|Item|File|alt=Text}}

Categorising

Navboxes are very useful for transcluding categories onto a large number of pages that share both a trait and the navigation box. For example: Template:ShipNavbox transcludes Category:Ships onto every page that uses it.

There are 2 methods of categorising pages with navboxes:

The first way is with {{t|Ctg}}. This is the preferred method, and can be used in most cases. The rules and operations for the Category handler template are very simple; however, they are enough to produce the desired results on most pages.

Categorisation should only be used on a template for large-scale addition. It is unhelpful, for example, to use a rule that only applies to 1 page.

Examples

To see the following navboxes in action, see Template:Navbox.

Single line navbox with centered list

{{navbox
|name    = 
|title   = 
|style1  = text-align:center
|group1  =
}}
{{navbox
|name    = 
|title   = 
|gtitle1 = 
|group1  = 
|footer  = Centered footer
}}
{{navbox
|name    = 
|title   = 
|gtitle1 = 
|group1  = 
|fstyle  = text-align:right
|footer  = Right-aligned footer
}}

Multiple line navbox

{{navbox
|name    = 
|title   = 
|gtitle1 = Group title 1
|group1  = 
|gtitle2 = Group title 2
|group2  = 
|gtitle3 = Group title 3
|group3  = 
}}

Collapsed navbox

{{navbox
|state   = collapsed
|name    = 
|title   = 
|style1  = text-align:center
|group1  = 
}}

Plain navbox with Tnavbar

{{navbox
|state   = plain
|name    = 
|title   = 
|style1  = text-align:center
|group1  = 
}}

Plain navbox without Tnavbar

{{navbox
|state   = plain
|title   = 
|style1  = text-align:center
|group1  = 
}}

Complicated navbox

{{navbox
|state   = uncollapsed
|name    = 
|title   = 
|gtitle1 = Level 1 Title 1
|group1  = 
|gtitle2 = Level 1 Title 2
|group2  = 
|gtitle3 = Level 1 Title 3
|group3  = 
|gtitle4 = Level 1 Title 4
|group4  = 
|gtitle5 = Level 1 Title 5
|gtype5  = Subgroup
|group5  = 
  {{navbox
  |subgroup = Yes
  |gtitle1  = Level 2 Title 1
  |group1   =
  |gtitle2  = Level 2 Title 2
  |group2   =
  |gtitle3  = Level 2 Title 3
  |gtype3   = Subgroup
  |group3   = 
    {{navbox
    |subgroup = Yes
    |gtitle1  = Level 3 Title 1
    |group1   =
    |gtitle2  = Level 3 Title 2
    |group2   =
    }}
  |gtitle4  = Level 2 Title 4
  |group4   = 
  }}
|gtitle6 = Level 1 Title 6
|group6  = 
|gtitle7 = Level 1 Title 7
|group7  = 
|fstyle  = 
|footer  = 
}}

Preventing unwanted documentation

The Navbox template's documentation is automatically transcluded under the navbox on any Template namespace page. It is not transcluded when used as a sub-group or collapsible sub-group template (subgroup= yes or collapsible=yes).

Should the documentation appear when it is unwanted, it can be hidden by setting the doc parameter doc=no on the template. In most cases, the doc parameter is NOT used and the parameter is removed completely.