Home Web-development MediaWiki 1.1 Beginner's Guide

MediaWiki 1.1 Beginner's Guide

By Jeff Orlof , Mizanur Rahman
books-svg-icon Book
Subscription
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
Subscription
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    About MediaWiki
About this book

MediaWiki is the free, open-source wiki engine software that powers Wikipedia and many of the other popular wikis across the Web. Written in PHP, it possesses many features that make it the engine of choice for large collaborative wikis: flexible markup, comprehensive user management, multimedia handling, and more. Whether you are creating a public wiki for open contributions, a private wiki for collaborating within your work team or group of friends, or even a wiki for personal use, this book will provide you with all the essential steps you require to achieve this.

This book covers how to administer users, back up and restore content safely, migrate your installation to another server or database, and even make hacks to the code. From the installation process to customizing the pages, you will learn what it takes to run a well designed, secure MediaWiki site.

Throughout the course of this book, you will see the many different ways that MediaWiki can be used on the Web. This book covers the open source MediaWiki wiki engine from installation and getting started through structuring your collaborative web site, advanced formatting, images, and multimedia to migrating your installation and creating new MediWiki templates. While you will be introduced to the many uses of a wiki, you will also be taken through step-by-step exercises that will help you master the many administrative tasks associated with running and securing your wiki. You will learn how to prevent unauthorized edits being made to content, how to prevent spam, how to back up and restore your wiki, how to configure its look and functionality to suit your needs, and much more.

Publication date:
March 2010
Publisher
Packt
Pages
356
ISBN
9781847196040

 

Chapter 1. About MediaWiki

It is amazing to see how far the web has come in such a short period of time. Just a few years ago, websites were limited to static pages where information was delivered at the hands of the site's webmaster. As technology progressed, websites no longer relied on just a few pages of HTML to share information. They grew into dynamic application platforms where content changed instantaneously and groups of people around the world could collaborate to build huge sites with tons of information for their visitors. Few technologies embrace this type of collaboration and information sharing like wikis do.

In this chapter we shall:

  • Find out what a wiki actually is and how they came to be

  • Learn what we can use wikis for

  • See how wikis compare to other web technologies

  • Be introduced to MediaWiki and its features

  • See how MediaWiki compares to other wiki engines

So let's get on with it.

Before we get started

It is important that you understand what this book will cover and what you should expect to have learned after reading it and following along with the examples.

This book is a step-by-step guide for getting a wiki up and running using the MediaWiki wiki engine. You will be given directions and examples, that will teach you how to install, configure, manage, and secure a fully-functional wiki.

MediaWiki is a robust wiki engine that is capable of creating large wiki farms where one or more servers host multiple individual wikis. People who create a wiki on one of these farms don't have to worry about the installation of the software, the administration of the server, or even the wiki software itself. All they have to do is create their content and build their site. MediaWiki also allows for integration with directory services such as Lightweight Directory Access Protocol (LDAP). Using LDAP, network administrators can host a wiki on their local/wide area network and integrate their users' network login credentials with their wiki to create a more seamless environment.

As this is a beginner's guide, this book will not cover such advanced topics; however, the foundation you build by reading it will prepare you for exploring more advanced configurations and uses of MediaWiki.

Note

Throughout this book, we will use the term wiki engine. A wiki engine is the software that runs a wiki system.

 

Before we get started


It is important that you understand what this book will cover and what you should expect to have learned after reading it and following along with the examples.

This book is a step-by-step guide for getting a wiki up and running using the MediaWiki wiki engine. You will be given directions and examples, that will teach you how to install, configure, manage, and secure a fully-functional wiki.

MediaWiki is a robust wiki engine that is capable of creating large wiki farms where one or more servers host multiple individual wikis. People who create a wiki on one of these farms don't have to worry about the installation of the software, the administration of the server, or even the wiki software itself. All they have to do is create their content and build their site. MediaWiki also allows for integration with directory services such as Lightweight Directory Access Protocol (LDAP). Using LDAP, network administrators can host a wiki on their local/wide area network and integrate their users' network login credentials with their wiki to create a more seamless environment.

As this is a beginner's guide, this book will not cover such advanced topics; however, the foundation you build by reading it will prepare you for exploring more advanced configurations and uses of MediaWiki.

Note

Throughout this book, we will use the term wiki engine. A wiki engine is the software that runs a wiki system.

 

An introduction to wikis


Many people first became familiar with the term wiki when they were introduced to Wikipedia. While it is the most popular wiki to date, the wiki's roots go back further than Wikipedia.

The history of the wiki

Although development of the first wiki began in 1994, roughly seven years before Wikipedia, it was not introduced until March 2005 by Ward Cunningham. WikiWikiWeb, as Cunningham called it, is written in Perl and derived its name from an airline employee in Honolulu telling Cunningham to take the Wiki Wiki Shuttle. The Hawaiian word wiki means quick so Cunningham was being told to take the quick shuttle. Cunningham later explained that he chose the name wiki wiki as, "an alliterative substitute for quick and thereby avoided naming this stuff quick-web."

WikiWikiWeb wasn't just a catchy name that Cunningham had thought up, it had a purpose. As a programmer heavily involved in the Portland Pattern Repository, Cunningham developed the wiki as a way for programmers to quickly create and share ideas with other programmers who contributed to the Portland Pattern Repository. With this new tool, programmers could collaborate with one another on projects without the need for a webmaster to upload new or edited content because the wiki lets the participants do all of this from their own web browser.

Note

The term wiki also has a backronym associated with it that expands to read what I know is.

After Cunningham deployed WikiWikiWeb as a supplement to the repository site, he began inviting other programmers to contribute content. The plan was to have interested parties write web pages about the people, projects, and patterns that have changed the way they program. Cunningham wrote to his colleagues, "Think of it as a moderated list where anyone can be a moderator and everything is archived. It's not quite a chat, still, conversation is possible."

With that, the ball started rolling and WikiWikiWeb still exists today as the largest wiki related to a single topic. You can visit the original wiki, although it has evolved over time, by going to http://c2.com/cgi/wiki?WikiWikiWeb.

As word spread about the success of Cunningham's wiki, others quickly adopted this technology for their websites. Soon, clones of the original wiki engine were starting to emerge in just about every programming language available.

Just about the time wikis were really starting to emerge as a viable tool, the Web 2.0 attitude took over many of the design concepts for the web. Developers and designers started looking at technologies that could help promote interactivity and participation from their visitors, not just the web masters. The freedom to collaborate and participate made wiki engines a perfect fit for the Web 2.0 paradigm because of the following reasons:

  • A wiki is a piece of application that is used for collaborative participation

  • Users are the primary contributors to wikis

  • Users have the ability to edit existing content

  • Users do not have to register for the site before contributing; making the wiki a truly open platform

  • User participation determines the site's success

While wikis remained popular within the programming and technical community, it wasn't until the introduction of one wiki in particular that the concept really took off with the average user.

Introducing Wikipedia

Since 1999, Jimmy Wales had been running a site called Nupedia as a free content encyclopedia with content written by experts. To make the content comparable to that found in professional encyclopedias, everything submitted underwent an extensive peer review process before it was published. In January 2001, Wales decided to create an encyclopedia with far less restrictions than his current Nupedia project. This encyclopedia would take on the slogan of the free encyclopedia that anyone can edit. To allow contributions and edits from the public, Wales and Nupedia editor Larry Sanger turned to a technology that the programming community had been using for years, the wiki.

While Nupedia ceased operations in 2003, its counterpart, Wikipedia, has grown into the largest wiki in the world with over 6 million articles written in 140 different languages!

Wikipedia is what introduced much of the world to the wiki. Not only is it the world's largest wiki, but it runs on the MediaWiki engine that we are going to install and configure over the course of this book.

 

What can you do with a wiki?


We have seen how wikis have been used by programmers and how a wiki engine was used to create the Wikipedia, but you may be asking, "How can I put a wiki to use?" You may even have a few ideas of what you would like to do with a wiki but are a bit unsure if it will work. The good news is, we will cover many different uses for wikis throughout this book with real examples of how they are put to use. The bad news is, a wiki is not a solution for all situations, but we will cover that as well.

When wikis are not the best choice

Let's go ahead and get this part out of the way so we can focus on building a wiki with MediaWiki. While wikis can do great many things, they were not developed to be the sole means of providing content to the World Wide Web. The key to a successful wiki is making sure that the community of users is willing, and able, to create and edit content for the wiki. Even with willing participants, there are many cases in which a wiki may not be the technology of choice.

Strict access control

Even as the focus of the web tends to shift more towards user-created content and a social web, there are times when you need to restrict who can create or edit certain content. As wikis were developed to allow anyone to create, publish, and edit content, for a scenario when access needs to be controlled, a wiki is not the best option. Although there are wiki engines such as PmWiki and MoinMoin that allow for some levels of access control, at its core, MediaWiki is an open access system that allows anyone, registered or not, the ability to contribute to the site. We will address how to control this in the following chapters.

Note

If you are looking for a way to restrict access to your wiki, we will be discussing some MediaWiki extensions that will help you prevent access to certain pages, or the entire wiki.

E-commerce

While a wiki about a certain product or business may compliment a company's web presence by providing customers with a user manual or customer-based support site, wikis are not designed to handle e-commerce. There are many different open source e-commerce programs that can provide a better environment for online sales. Remember, wikis are about content and collaboration.

Static content sites

If a website has no plans to include collaboration or interactivity then a wiki is not a good solution. A wiki is most successful when the community surrounding it is able to contribute content to the site. If the content that will be posted on the site will be maintained solely by a web master and is static, HTML or a content management solution may be a better choice.

Users are unwilling to learn something new

Wikis use different markup languages to format text as bold, italics, and so on. For instance, MediaWiki requires users to learn wikitext. While many of the markup languages are easy to learn, as we will see in the following chapters, if your community or organization has a large group of people who don't want to learn this, the wiki won't be successful.

What are wikis good for?

Okay, so we have covered when you would not use a wiki. Now, let's tackle the more relevant question, when is wiki a good solution? After all, you bought this book because you want, or need, to implement a wiki.

Wikis can be used for a great many things. A wiki can be used for brainstorming ideas, developing frequently asked questions (FAQs), knowledge management, course management, collaborating on projects, a knowledge base, or providing reference material. Of course, the previous list is not complete by far. Creative individuals have thought of many different ways to implement a wiki.

While it is easy to say that a wiki has many different uses, it is better to show how they are used. The following examples show how different organizations and companies use wikis to share information. Each example not only uses a wiki, but they have chosen MediaWiki as their wiki engine. As this book is about MediaWiki, we will be highlighting how MediaWiki is a solution in each instance.

Community information sharing

The best example of how a wiki can share information with a large community is Wikipedia. With over 6 million articles, imagine how long it would take for a webmaster, or even a team of webmasters, to post each piece of content. As the wiki software allows users to post their own articles, a large amount of content can be shared almost immediately after it was created.

The ability to edit and delete articles also makes Wikipedia so successful. One of the problems that Nupedia faced was not only having content written for the site, but having it edited and verified for accuracy. Using a wiki, Wikipedia can rely on the experts in the community to enforce accuracy over the site's content.

Project collaboration

Think about how easy work would be if you had the ability to view a document's edit history with a simple click or being able to make sure you are not the only one in the office referring to version 2 of a document while the rest of the team is working from version 4. While a word processor has tools to minimize this, not everyone has the same software at home that they do at work. Again, a wiki engine like MediaWiki makes this all possible. Co-workers can share and collaborate without having to e-mail documents back and forth, and you don't have to worry about lost or forgotten USB drives because with a wiki, all content is hosted and can be accessed from your web browser. Even if you use Firefox at work, and Safari at home, you will be able to work on documents without having to convert the files.

As a wiki is an ideal platform where people can easily share notes, ideas, design requirements, and other lightweight assets, it makes for a great addition to a project management plan. In fact, this is what the original WikiWikiWeb was designed for.

WikiMedia is the choice for many organizations who use a wiki in a similar manner.Advanced Gaming Systems created an internal wiki to help facilitate the development of "The Next Harpoon" game. AOE media GmbH, the leading TYPO3 consultant group, also uses MediaWiki as an internal tool for collaborating on projects.

Note

Many organizations who do not want information to be seen by people outside their group will install MediaWiki on their company or organization's intranet. This way, the openness of a wiki can be maintained while protecting proprietary information.

Creating a user manual/FAQ page

Have you noticed how software and hardware companies no longer include thick user manuals in their packaging? As technology allows them to include their documentation on the installation media, they are able to save money on shipping and printing costs. However, many free/open source software companies don't provide installation media for their users. Instead, the files are downloaded and the user manual is often not included. Many of these companies have turned to MediaWiki as a way to create documentation for their software.

Blender modeling software is a great example. While the home page for Blender (http://www.blender.org) was created in standard HTML, the user manual (http://wiki.blender.org/index.php/Doc:Manual/Introduction) makes use of MediaWiki. Providing the user manual and/or FAQs page for a software package not only is a cost-saving solution, but it also keeps free/open source software projects true to the community philosophy. Using software such as MediaWiki allows the community to create and modify the user manual. The Writer Guide (http://wiki.blender.org/index.php/Meta:Guides/Writer_Guide) of this manual explains how community members can contribute. The following screenshot shows the Blender User Manual in MediaWiki:

Building an entire website

Now, we are not talking about hosting a standalone wiki such as Wikipedia, and we are not talking about certain parts of a website like the user manual. There are organizations that have built their entire website, from the home page to the download page, entirely with MediaWiki.

If you have visited the MediaWiki home page then you have already seen a perfect example of this. If that example is much too obvious, then let's take a look at the site for the enterprise-grade network management software, openNMS (www.opennms.org). As the openNMS group spans the globe, it makes perfect sense to create a site that anyone, anywhere can contribute to, making it a true community and a true free/open source project. The following screenshot shows the openNMS home page created with MediaWiki:

Company policies and documents

For many companies, creating an employee manual can be a nightmare. As laws and regulations change, so do human resource policies, IT policies, and just about every other governance that pertains to employees. Printing these manuals can be costly to begin with, and making sure that each employee has the updated version takes quite a bit of effort and manpower for a large organization.

So what would allow a large group to create and maintain a site filled with content? A wiki of course. With a solution like MediaWiki installed on an company's intranet, the human resources department can host the employee manual and all of the forms that they require workers to fill out, information technology departments can post software installation procedures and acceptable usage policies, and the finance department can provide employees with updated information on direct deposit. The possibilities are as wide open as the number of companies who use MediaWiki for this very reason. Big organizations like Intel, Gyanasoft, and Aperture Technologies are some of the best examples of how big organizations use MediaWiki for this exact purpose. Even smaller companies like Pepper Computer, Inc. make use of MediaWiki for employee documents.

Learning management

With such a focus on collaboration and discussion, wikis are a great platform for learning management. While it lacks the grading and testing features that a large scale learning management system(LMS) like Moodle has, MediaWiki can help someone put together an extremely informative course. While companies may elect to use MediaWiki as a free training resource for their products, one site that really shows off the power of MediaWiki as a learning management tool is ECGpedia.

ECGpedia is an online course for nurses and doctors about electrocardiographs. The site (www.ecgpedia.org) provides students with the full course, reference materials, the textbook, and a large library of case studies. To better help students understand such a complex subject, ECGpedia makes use of MediaWiki's ability to let users post multimedia files using one of the many extensions available. If you visit the site, you can see a flash movie of a beating heart that coincides with a normal rhythm.

Comparing wikis to content management systems, blogs, and forums

If you have been working with web technologies for a while, you may be asking if someone couldn't just use some other form of community software like a Content Management System (CMS), forum, or blog for any one of these examples. The short answer is yes. These technologies could be substituted for a wiki in many of the examples mentioned above. However, if you think that a CMS, forum, or blog is an easier or more robust solution, take the time to compare them against a wiki to see how easy and powerful a wiki can really be. Let's look at a few differences:

Feature

Blog

Forum

CMS

Wiki

Posting or editing content

Blogs usually only allow the blog owner to post content. Visitors are usually restricted to only commenting on posts from the blog owner. Often many times these comments need to be approved before they appear on the site.

Registered members can post content, however posting may require approval first. If a posting is closed, further comments are not allowed. Original posts cannot be changed by anyone other than the author.

Only those with certain accounts, such as administrators or editors, can post content. Visitors can only view content.

Anyone can add or edit content without the need for an administrators approval. Even unregistered members can be given permission to add and edit.

Method of contribution

As the blog owner is the author of the content, he or she is the main contributor. Permissions can be given to certain authors as well. Most contributions are limited to commenting on other people's posts.

Anyone participating is a contributor, however replies must focus on the original posting. Topics are generally moderated.

Only privileged members can contribute and/or edit.

Everyone has the ability to contribute by creating new articles, editing inaccurate content, or adding to existing content.

Wikis by nature are simple to use and simple to manage. There is no need for an administrator to create user accounts and grant permissions since users can create their own account. Once we get into writing and editing articles, you will see how easy it is for your users to start using wikitext as well.

 

MediaWiki


Now that we know the history of the wiki, and understand how wikis can serve many purposes, let's take a look at the most powerful wiki engine available—MediaWiki.

MediaWiki came to life to solve issues that Wikipedia was having with its wiki engine, UseModWiki. As Wikipedia grew and its content and traffic increased, it began to outgrow the Perl-based UseModWiki. To address page load problems and provide greater functionality, Lee Daniel Crocker went to work on a PHP-based application that utilized a MySQL database for the backend while Magnus Manske went to work on the user interface.

In June 2003, Jimmy Wales, co-founder of Wikipedia, announced the creation of the Wikimedia Foundation to manage all projects related to Wikipedia. In August of the same year, MediaWiki was introduced and is now the wiki engine that runs all of the projects under the Wikimedia Foundation, including the flagship Wikipedia.

MediaWiki's features

One of the reasons that MediaWiki is the wiki engine of choice for many organizations is that it has so many features available for both users and administrators. Let's take a look at a few:

  • Easy navigation system: MediaWiki provides an easy navigation system with options such as a search feature, a Go button that takes you directly to a page you have searched for, Random page, Special pages, and a Printable version for articles.

  • Editing, formatting, and referencing: MediaWiki provides an easy way to edit, format, and reference pages with other pages. It also gives us the option to track changes. As wikis are deployed in multi-user environments, the ability to see who created or edited a piece of content is a key feature to manage the content properly.

  • Look and feel change: Users can change the look and feel of a wiki site using MediaWiki. They can use a variety of skins and make style changes for their individual pages.

  • File uploading: MediaWiki gives you an option to add file upload capabilities to your pages as we saw with ECGpedia. It also gives you flexibility to decide the allowable file extensions that can be uploaded by users and also a list of file extensions to be blocked.

  • Multilanguage support: MediaWiki supports many languages and UTF-8. So you can implement MediaWiki in different languages. Many sites such as Wikipedia use the multilingual feature, which allows you to read and write different languages using the same piece of software.

  • User management: MediaWiki has a built-in user management system where you can create new logins and assign user privileges if you require greater access control. You can also customize privileges for user types in order to fit your security needs.

  • Syndication: MediaWiki supports web syndication by providing RSS syndication for many special pages such as Special pages | Newpages and Special pages | Recentchanges. Syndication helps you to grow your site rapidly in the web world.

MediaWiki and other wiki engines

Of course, MediaWiki is not the only wiki engine to choose from. If you visit a site called Wikimatrix (www.wikimatrix.org) you will see a long list of wiki engines that are available to you. Now, MediaWiki was created specifically to run the largest wiki in existence. It is the choice of large corporations such as Intel and Novell and small to medium-sized businesses such as Moby Games. Many free/open source projects rely on MediaWiki as an integral part of their online presence. However, if you still don't know if MediaWiki is the right choice for you, let's look at how it stacks up against some of the other wiki engines. The list below introduces us to some of the other popular wiki engines:

  • DokuWiki: DokuWiki is a simple wiki engine written in PHP and can be used to create any type of document. It is simple and standards compliant. It is suitable for small companies, development teams, and user groups. Instead of using a database, DokuWiki's data is saved in a plain text file or a flat file. The syntax is very simple yet powerful enough to create any type of content. Key features includes simplified editing, linking, support for image and other files, and plugins support to extend wiki functionality.

  • PhpWiki: PhpWiki is a clone of original WikiWikiWeb. It was the first wiki software written in PHP and was released in 1999. It supports a majority of the databases. The installation process is very simple and gives you what you look for in an out of the box solution. It supports plugins in order to increase functionality. It is suitable for free-form discussion-based site creation and also for collaborative development sites.

  • PmWiki: PmWiki is a PHP-based wiki that does not require any database and uses flat files like DokuWiki. It is very easy to install it and extend its functionality. It supports a template system in order to change the look and feel of the website as well as the functionality to a great extent. It also provides an access control system in order to protect site pages or groups of pages by enabling a password-protected mechanism. It also gives ample opportunity to customize the site as well as extend its functionality using plugins.

  • QwikiWiki: QwikiWiki is another wiki system written in PHP and does not require any SQL database in order to operate. It uses cookies and its own filesystem in order to process and manage files. It has some key features such as file uploading, a template system, and an access control system.

  • Wikipage: It is small, but a wiki standard, easy-to-use system. Wikipage is more secure than TipWiki. It has password-protection support for access control, multilanguage, and multisite support. Other common features include file uploading, table support, and so on.

  • TWiki: TWiki is a flexible, powerful, and easy-to-use enterprise collaboration platform and knowledge management system. It is a structured wiki written in Perl. It is typically used to run a project development space, a document management system, a knowledge base, or any other groupware tool, on an intranet or on the Internet. It does not require any database since the data is stored in filesystem. It has a large plugin system with more than 200 plugins available to use such as spreadsheet, image gallery, slide shows, drawings, charts, graphs, and so on.

  • Kwiki: Kwiki is perhaps the simplest to install, most modular, and easiest to extend. It is written in Perl and also available in CPAN. Other than providing basic wiki features, Kwiki by default offers slide shows, page backups, privacy options, and blog capabilities that are not found in any other wiki. It supports a plugins system in order to extend functionality.

  • MoinMoin: MoinMoin is written in Python and has been derived from the PikiPiki wiki engine. This wiki uses a flat file and folder in order to save data. It does not require any database for operation. It is extensible and customizable. It supports subpages, Unicode, RSS feed, a template system, theme support, an access control list, and an anti-spam feature.

Note

While flat files are easy to compress, databases provide you with much more scalability and are easier and faster to search. Also, wiki engines that rely on flat files often require a script to run that writes the file. If you are planning to deploy one of these wiki engines on a hosted website, make sure your hosting provider allows you to run scripts on the server.

How MediaWiki fits your needs

While the wiki engines mentioned in the previous section have some great features and qualities, MediaWiki is still a better choice due to the extensive feature set and flexibility it offers. Let's take a moment to see how MediaWiki can best fit your needs:

  • Simple editing: Every page contains an edit link on the top navigation bar that only needs to be clicked to open the editing screen. When you finish making changes, you can post them by clicking the Save page button, so your changes go live on the site.

  • Use of simple markup: Editing in HTML is difficult if you do not know HTML tags. While WYSIWYG editors take away the need to be fluent in HTML, there are cases when you need to work with HTML markup. With MediaWiki you don't have to remember complex tags; it has its own type of syntax that is made up of a few simple markup rules. This makes editing simpler and the proper HTML tag conversion is done by the system. MediaWiki will solve this problem by writing the HTML for you. These rules are designed to make wiki markup easy for general users to write and adopt.

  • Recording histories: MediaWiki will save a copy of your old pages and let you revert to an older version of a page if you need to. In fact, MediaWiki will display a comparison, called a diff, which shows you the exact changes you or someone else has made to your page over time. So if someone edits an article in a way that is inaccurate or inappropriate, you can easily change it back.

  • Simplifying creating links: MediaWiki stores your entire website's content in an internal hypertext database. MediaWiki knows about every page you have and about every link you make. When you are using MediaWiki, you don't have to worry about the location of files or the format of your tags. Simply name the page, and MediaWiki will automatically create a link for you. You can create links within your wiki or to some other wiki as well as to the web world.

  • Simplifying creating new pages: MediaWiki links you to pages that don't yet exist. Click on a link that points to a nonexistent page, and the wiki will ask you for the initial content to be placed in the page. If you write this content, then the wiki will create the page right then and there. All links to that page (not just the one you clicked) will now point to the newly-created page. This is the simplest way of creating a new page in MediaWiki. You don't even have to bother to create the page, save it, and then link it from another page.

  • Simplifying site organization: MediaWiki uses a database in order to manage the hypertext of the site. As a result you can organize your page however you want. Many CMS require you to plan classifications for your content before you actually create it. This can be helpful if you are looking for a rigid structure. With MediaWiki you can organize your page into categories and namespaces if you want. Instead of designing the site structure, many wiki sites just let the structure grow with the content and the links inside their content.

  • Tracking all your stuff: As MediaWiki stores everything in a database that knows about all your links and all your pages it is easy for MediaWiki to show backlinks, a list of all the pages that link to the current page. It also stores your document history so that it can list recent changes to the document and even a list of recent changes to pages that link to the current page.

  • Encouraging discussions: Using the discussion page feature, users can communicate and collaborate on an individual page's content and/or edits. The discussion page, or talk page as it is commonly called, is also editable by users to facilitate communication among the community.

 

Summary


In this chapter, we were introduced to a history of wikis and how wikis were developed to create collaborative communities. As we investigated how wikis are used, we saw examples of how different companies and organizations use wikis in different situations, and each of these examples highlighted the MediaWiki engine. To show how MediaWiki is a viable solution for any wiki needs, MediaWiki's features were explained and it was compared to some of the other popular wiki engines. In the next chapter, we will learn how to install MediaWiki on our server through FTP, cPanel, and through a proprietary application installer.

About the Authors
  • Jeff Orlof

    Jeff Orloff is a Technology Coordinator with the School District of Palm Beach County and has worked bringing technology solutions to the education forefront for over ten years. In addition to his work with education, Jeff is a consultant with Sequoia Media Services helping businesses install, configure, and use social media tools and create engaging content for their Web presence.

    Browse publications by this author
  • Mizanur Rahman

    Mizanur Rahman from Bangladesh is a Senior Software Engineer at Relisource Technologies). He loves to work with Java, PHP and other web-based technologies and is a moderator of PHPXperts, the largest PHP user group in Bangladesh

    Browse publications by this author
MediaWiki 1.1 Beginner's Guide
Unlock this book and the full library FREE for 7 days
Start now