This template performs a number of functions:
- It draws information about a item from a data page if it finds one for the item. It can also draw information directly from its parameters like a typical infobox.
- It displays an infobox using that information by calling {{Item infobox/layout}}. Note that the visual and layout code is in that template with the exception of the multiple data page warning.
- It sets properties and categories, which are used to create automated lists such as the one used by {{Item table}}.
Finding the data page[]
The template finds a data page for an item in one of four ways:
{{Item infobox}}
When the name
, datapage
, and testdatapage
parameters are not given values, the infobox looks for a data page in Category:Imported item data where Property:Has name is the same as the name of the page the infobox is being used on.
{{Item infobox |name=item name }}
When the name
parameter is given a value but datapage
is not, the infobox looks for a data page in Category:Imported item data where Property:Has name has that value.
{{Item infobox |datapage=data page name }}
When datapage
is given a value, the infobox looks for that page, but will return it only if the page is in Category:Imported item data. When using this, specify only the page name of the data page. For example, for "Data:EXAMPLE", just specify "EXAMPLE".
Note that an item data page should be set up with {{Item data}}, and the name
parameter on that template sets the value of Property:Has name. If the name
parameter doesn't get a value, Property:Has name is set to the page name.
{{Item infobox |testdatapage=full data page name }}
testdatapage
works the same as datapage
except that it requires the full name of the data page, including the namespace. This is useful for testing data pages set up in a user namespace.
When there is no data page[]
If an item doesn't have a data page for some reason, you can treat this as a normal infobox and supply the values yourself.
{{Item infobox |name= |desc= |description_simple= |icon= |maxcharges= |type= |category= |cost= |costperpurchase= |craftingvalue= |craftingcomponent= |attackspeed= |healthregen= |manaregen= |casttime= |cooldown= |bonusdescription= |legendaryname= |legendarydescription= |components= |power= |health= |mana= |filters= |attack= |mdamage= |range= |move= |resist= |rcost= |empowerment1= |empowerment2= |empowerment3= }}
Note that if a data page for the item is imported later, the values of these parameters will be ignored.
Overriding data page values[]
If necessary, it is possible to override the values pulled from the data page. When data is simply outdated, it's probably better to just change it on the data page itself, as it would probably have been corrected in the next data import anyway. But if for some reason imports seem to be consistently bringing in incorrect data, you can override it by using the force
parameters:
{{Item infobox |force_name= |force_desc= |force_description_simple= |force_icon= |force_maxcharges= |force_type= |force_category= |force_cost= |force_costperpurchase= |force_craftingvalue= |force_craftingcomponent= |force_attackspeed= |force_healthregen= |force_manaregen= |force_casttime= |force_cooldown= |force_bonusdescription= |force_legendaryname= |force_legendarydescription= |force_components= |force_power= |force_health= |force_mana= |force_filters= |force_empowerment1= |force_empowerment2= |force_empowerment3= }}
This template defines the table "Items". View table.