Help:Including additional CSS and JS

The global JavaScript method  provides a common interface for including articles that contain scripts or styles on a wikia.

The functionality is similar to the existing methods  and. However,  can import articles from external wikias, bundle several articles into one, minify them and serve them as a single request. This reduces both file size and web traffic, effectively making a wikia with a large number of additional files load a lot faster.

Usage
The  method relies on module definitions to load articles. Modules are essentially a JavaScript object with key/value properties. The following properties are required in every module:
 * type - This property denotes the type of articles this module will contain. The supported types are:
 * script - An article containing JavaScript (for example "MediaWiki:Common.js").
 * style - An article containing CSS (for example "MediaWiki:Wikia.css").
 * articles - The articles you wish to import. See the locating articles section below for more information on what to put here.

Any number of modules can be passed into. However, all of the articles within a module must be of the same type.

Locating articles
Simple syntax is used to locate the articles you're trying to import. It is very similar to, and compatible with, interwiki links:

Anything in parentheses above is optional, and anything in brackets above denotes user input. The colon character is used to separate the string into different segments for parsing. Prefixes tell us how you want to look up the article and are generally followed by a wikia name, except in the case of a local wikia.

Local articles
Articles on the local wikia can be located by title in the same way that you would link to them normally. They do not require a prefix or wikia name, though, for convenience, there is a local prefix (or "l" for short). For example, if you wanted to import the article MediaWiki:Common.js, any of the following would work:

External articles
Articles from external wikias can also be located the same way that you would link to them normally. However, unlike local articles, external articles require the use of a prefix and wikia name to determine which wikia you will be importing them from and how you will identify that wikia. Wikia supports looking up wikias by their database name, which is typically the English name for the wikia, and by its URL. Database lookups are performed for the external prefix (or "remote" or "w" for short) and URL lookups are performed for the url prefix (or "u" for short). For example, if you wanted to import the article from the, any of the following would work:

This syntax will also work for wikis in other languages. For example, if you wanted to import the article from the Italian version of :

It's generally easier to locate resources on external wikias by URL than by database name, since the two don't always match.

Advanced usage
Behind the scenes, the  method performs three necessary tasks:
 * 1) Generating a properly formatted URL for use with ResourceLoader,
 * 2) Performing sanity checks on the modules provided to assure they are properly formatted
 * 3) Providing the user feedback in the case of an error.

However, use of the method is not strictly required to gain the benefits of combining and minifying multiple articles into one request. If you'd like, you can generate the URL manually and load the assets using other means, such as @import statements in CSS or jQuery.getScript in JavaScript.

While there are many parameters you can include in the URL, the following are probably the most useful:

In the end, you should end up with a URL that looks something like this:

Which can be used in conjuction with, like so:

Examples
Importing multiple script articles, one from the local wikia and one from an external wiki:

Importing multiple style articles, one from the local wikia and one from an external wiki:

Importing multiple modules in a single method call:

Alternate Syntax Examples
The  method also supports simplified, alternate syntaxes for common use cases. For convenience, the method  is also defined.

Including a single file from the local wikia using a module definition:

Further help and feedback
de:Hilfe:JavaScript/Gleichzeitiges Einbinden mehrerer Seiten es:Ayuda:Incluyendo JavaScript y CSS adicional fr:Aide:Inclure JavaScript et CSS supplémentaire it:Aiuto:Includere JavaScript e CSS addizionali nl:Help:Bijkomende JavaScript en CSS laden ru:Справка:Включение дополнительных JS и CSS