All4One Wikia
Advertisement

CreateSpecialPage allows admins and users to create special pages. This may be useful for creating special pages for polls and such when it needs to be in the special namespace.
Note: Special pages cannot have subpages as the special page will try to read it as a specifier. For example, Special:ListUsers/sysop lists all sysops on this wiki and Special:NewPages/5 lists the last 5 pages that were created.

Installation

Add this JavaScript on your wiki:

Global
w:Special:Mypage/global.js
Personal
Special:Mypage/common.js
Site-wide
MediaWiki:Common.js
pageNames = [
    'PAGENAMEWITHOUTPREFIX',
    'ANOTHERPAGENAMEWITHOUTPREFIX'
];
pageData = [
    'DATAFORFIRSTPAGEINABOVELIST',
    'DATAFORSECONDPAGEINABOVELIST'
];
pagePurpose = [
    'PURPOSEOFFIRSTPAGE',
    'PURPOSEOFSECONDPAGE'
];
importScriptPage('CreateSpecialPage/code.js','dev');
importArticles — Best Practices for installing JavaScript on Wikia
The importArticles statement is designed to combine multiple HTTP requests into a single data transfer, allowing multiple scripts to load and execute faster. If you've been installing several different scripts, your JavaScript file has probably accumulated unnecessary import statements. Click "Expand" to learn how to efficiently batch import scripts to speed up performance and make your code look cleaner.

If your JavaScript file has several lines of code that say importScript, importScriptPage, or importArticles, you may be able to combine them! By batch importing a collection of scripts with a single import, your JavaScript code will load faster and look cleaner. Consider the example below. On the left is an example of what your JavaScript file might currently look like. On the right is how you could improve that code.
Multiple imports — messy and slow
One import — clean and efficient
importScriptPage('AjaxRC/code.js','dev');

importScript('MediaWiki:localScript.js');

importArticle({
  type: 'script',
  article: 'u:dev:FloatingToc/code.js'
});

importScriptPage('page1.js', 'wikiname');

importScriptPage('page2.js', 'wikiname');
importArticles({
    type: 'script',
    articles: [
        'u:dev:AjaxRC/code.js',
        'MediaWiki:localScript.js',
        'u:dev:FloatingToc/code.js',
        'u:wikiname:page1.js',
        'u:wikiname:page2.js'
    ]
});
Note: in this example, pay close attention to the placement of commas and other punctuation. For people who aren't familiar with programming (and even those who are!), a common mistake when writing code is to accidentally delete, forget, or misplace critical symbols like commas or quote marks. This can cause a syntax error that breaks the code. Carefully follow the convention shown here when using importArticles.
But there's much more to importArticles than just this! For more examples and advanced usage, see the help page at Help:Including additional JavaScript and CSS.
Advertisement