This template is used on approximately 3,400 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them. |
This template tests whether the first unnamed parameter contains an error message and returns
- the value of the first parameter prefixed by the third parameter value, and suffixed by the fourth parameter value, if there is an error;
- the value of the second unnamed parameter, if given, or the first parameter value itself, if there is no error.
This is useful when the first parameter is an {{#invoke: }} of a Lua module that may return an error. Because it uses the {{#invoke: }} just once, it simplifies the coding of infoboxes, for example.
Usage
- {{#invoke:Infobox mapframe|auto}} called with improper coordinates
{{iferror then show |{{#invoke:Infobox mapframe|auto|onByDefault=yes|coordinates=10, 30}} |NO ERROR|PREFIX|SUFFIX}}
→PREFIXLua error in Module:Mapframe at line...SUFFIX
- {{#invoke:Infobox mapframe|auto}} call that produces no errors
{{iferror then show |{{#invoke:Infobox mapframe|auto|onByDefault=yes}} |NO ERROR|PREFIX|SUFFIX}}
→NO ERROR
See also
- {{Ifnoerror then show}} – similar template with inverted logic