List of simple extensions
From MediaWiki.org
Beginning developers may wish to watch this intro video (slides) and peruse the list of simple extensions when considering how to create a new extension. Some of the code from these extensions can provide insight into how to approach an implementation task, or even be cannibalized for your purposes.
Contents |
License [edit]
You may want to include a licensing statement at the beginning of your extension file, e.g.:
/*
* @author Your Name <your@email.com>
* @copyright Copyright © 2012, Your Name
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
Another way to do it is like this:
/**
* NameOfYourExtension
*
* Copyright © 2012 Your Name <your@email.com>
* http://www.mediawiki.org/
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* http://www.gnu.org/copyleft/gpl.html
*
* @file
*/
Extensions [edit]
-
- ContentAction: An extension that demonstrates how to use the SkinTemplateContentActions hook to add a new content action.
- ErrorPage: Example of the page that uses extensions hooks DBConnectionErrorRaw and DBQueryErrorRaw for making nice error page.
- Example: This is an example extension. It doesn't actually do anything useful, but can be copied to provide the basis for your own extension.
- MyExtension FourFileTemplate: Four-file special page extension template.
- HelloWorld: A special page that says "Hello World!" in the appropriate language.
- Parser_hook: A parser hook example, use it on a page like
<hook arg1="foo" arg2="bar" ...>input</hook> - Variable_hook: An example parser hook that defines a new variable,
{{EXAMPLE}}
- Manual:Special_pages#Basic_special_page_template provides an example of a four-file Special Page extension called
MyExtensionthat outputs "Hello world!" Don't forget the standard collection of special pages in includes/specials, the functionality of some of which you may already be familiar with. - Assert Edit is a simple API extension.
- Awesomeness is a simple API and ArticleSave extension.
- BreadCrumbs (Kimon), which uses UserToggles, provides a good example of how to incorporate CSS files into your extensions.
- PatchOutput uses the OutputPageBeforeHTML hook to apply some patches to the HTML code of a page before it is displayed
- RemoveRedlinks uses the LinkBegin hook to turn all red links into regular text.
- Extension:ChangeSessionSkin allows to switch between skins for the duration of the session, or until changed again, without changing the user preferences, thus available to anon users too.
References [edit]
- ↑ If you are checking this out from SVN and intend to copy it, please use:
svn export /path/to/this/extension /path/to/new/extensionto create a clean copy without any extra SVN cruft.