トップ » 技術記事 » オリジナル Wiki を作ってみよう!(1) - 既存 Wiki の紹介

オリジナル Wiki を作ってみよう!(1) - 既存 Wiki の紹介

タグ: PHP Wiki

本稿では、数回に渡って、PHP を用いて簡単な Wiki サイトを作るまでの手順を解説したいと思います。ゼロから Wiki を作ることで、Wiki がどんな仕組みで動いているのか、また、Web アプリケーション製作の手順が分かると思います。

Wiki とは何か?

世界的に有名な Wiki は、Wikipedia です。Wikipedia は世界最大のオンライン辞書サイトです。このサイトが面白いのは、世界中のライターによって、日々、新しい項目が追加され、また古い項目もメンテナンスされていることです。自分の知っている情報を誰でも書き込んでいくことができるのです。

Wikipedia

Wikiとは、まさに、この仕組みを提供している Web アプリケーションです。誰でも、好きなようにWebページを作ったり編集したりすることができるのです。従来のWebページでは、管理者が一人でページを編集するものでしたが、Wiki を使うことで、多くの人が一緒に、Webを構築していくことができます。また、Wiki を使うことで気軽にページの編集ができるので、一人でWebページを作る際にも、Wikiが利用されることもあります。企業でのWiki利用も進んでおり、社内にWikiを構築し、社員への連絡事項や社内での決定事項を告知するのに利用されています。

最近、私は書籍を執筆する際に、Wiki を利用しています。なぜ、Wiki を利用しているのかというと、まず、Wiki を利用するとページの更新履歴が残るので、以前書いた内容が良かった場合にすぐにその内容に戻すことができます。そして、編集担当の方や、出版社の方に執筆の進行状況を確認してもらうことができます。技術系のライターは本業が忙しいことが多く、なかなか原稿があがりません。そこで、進行状況を確認してもらうことで、編集担当の方に安心してもらうことができます。また、書いている途中にアドバイスをもらえるのも良い部分です。

すぐに使えるオープンソースのWikiの紹介

ここで、いくつかオープンソースの有名なWikiを紹介しましょう。

MediaWiki

MediaWiki

MediaWiki は、Wikipedia のエンジンです。Wikipediaのシステムは、システム自体が、オープンソースのGPLとして配布されているのです。

PukiWiki

PukiWiki

PukiWiki は、国産のWikiで、プラグインが豊富に用意されています。設置がしやすく軽快に動作するので、気軽に Wiki を使ってみたい人に向いています。私も愛用しています。

どんな Wiki を作るのか?~開発動機

何事にもきっかけというものがあります。私が Wiki を作ってみようと思ったのにも、やはり、きっかけがあります。先日、はてなダイアリーを見ていると、エントリーに「60行で作るテンプレートエンジン」というのがあり、テンプレートエンジンを自作した話が載っていました。それならば、Wiki を、百行以内で自作してやろうと思ったのです。

ところが、実際に作り始めてみると、さすがに、百行でできたのは、Wiki 記法で書いた文章を HTML にレンダリングする部分しかできませんでした。そのため、ここで趣旨を変更して、行数は増えても良いので、とりあえず動くWikiを作ってみようということになったのです。

実は、私がゼロから Wiki を作るのは、2回目です。以前は、私の自作プログラミング言語「葵」のサンプルアプリケーションとして、Wikiを作りました。しかし、いくつか不満点がありました。しかも、この Wiki を使うには、サーバ側に「葵」をインストールするところからはじめなくてはならず普及には至りませんでした。そこで、一般的なプログラミング言語の PHP を利用して、Wiki を作ることで、多くの人に使ってもらえる Web アプリケーションとして完成させたいと思ったのです。

まだ完成していませんが、本連載とともに、完成させていこうと思っています。(次のページへ続く..)

Series Navigation開発環境のセットアップ»

1 2

執筆者紹介

クジラ飛行机

クジラ飛行机

くじらはんど(http://kujirahand/)にて、日本語プログラミング言語「なでしこ」(IPA未踏ユース採択)、テキスト音楽「サクラ」(OSPオンラインソフト大賞入賞)など多くのオンラインソフトを開発。著書に「Flexプロフェッショナルガイド」「なでしこ公式バイブル」、「一週間でマスターするActionScript3.0」など。

TrackBack URL :