Customising templates

    From Miraheze Developers Wiki

    High quality and complex templates are easier obtained from Wikipedia, or similar sites (e.g. MediaWiki) than written from scratch. Considerable work will have already gone into developing and debugging these. However they are usually tailored specifically for those sites. On Miraheze Developers Wiki the templates are intended to be more suitable for general use. This page explains how to go about doing that.

    Required changes

    Site (e.g. Wikipedia) specific templates need to be made more generally usable:

    • Comply with Wikimedia trademark policy.
    • Replace instances of Wikipedia in the text with {{ns:Project}}, (or Miraheze if appropriate).
    • Replace instances of Wikimedia in the text with Miraheze.
    • Replace namespace wikilinks e.g. Wikipedia to {{ns:Project}} or meta.
    • In Lua modules replace Wikipedia with ' .. mw.site.siteName .. ' for example to alter the text in {{stub}} change in module asbox line 233 from:
    ' is a [[Wikipedia:stub|stub]]. You can help Wikipedia by [',
    

    to:

    ' is a [[' .. mw.site.namespaces.Project.name .. ':stub|stub]]. You can help ' .. mw.site.siteName .. ' by [',
    
    .
    • Remove assumptions about the structure of the wiki (such as a template producing an error when used in certain namespaces - you can't know what namespace configuration the target wiki will use) from both the code and the documentation.
    • Remove or import (making sure to follow this process again) any dependencies that don't exist here.
    • Remove any red-linked categories and add the template to Category:Templates or an appropriate subcategory.

    Icons

    Miraheze wikis are Instant Commons enabled, otherwise the images for icons would have to be uploaded locally. A good source for icon images is Wikimedia Commons' Category:Icons by subject.

    Licensing

    Because of CC-BY-SA licensing considerations the previous authors need to be acknowledged. Here's a list of sources and attribution templates for inserting at the bottom of the imported pages, (but not sub-pages) e.g. before </noinclude>:

    See also