プラグインの誕生と国際化への第一歩 ― WordPress 1.2「Mingus」

みなさん、WordPress を使い始めた頃のこと、覚えていますか?

今でこそ簡単にカスタマイズできる WordPress ですが、昔はちょっと大変でした。特に、WordPress 1.2 が登場する前は、WordPress をカスタマイズするには、「ハック」と呼ばれる方法で直接コードを書き換えるしかありませんでした。

そんな中、2004年5月にリリースされた「WordPress 1.2」によって、大きく進化します。このバージョンでは、プラグインシステムの導入や国際化対応が行われ、より多くのユーザーが簡単にカスタマイズできるようになりました。

本記事では、WordPress 1.2 がもたらした大きな進化のうち、特に「プラグインシステム」と「国際化対応」について振り返ります。

プラグインが誕生する前は大変だった!

WordPress 1.2 が登場する前、カスタマイズするには「ハック」を使うしかありませんでした。これは b2 (WordPress の前身) から受け継がれた方法で、コードを直接編集する必要がありました。

例えば、新しい管理画面の機能を追加しようと思ったら、特定のテキストファイル (b2menutop.txt) を開いて、メニューに追加したい PHP ファイルの名前を書き込む必要がありました。

そして、実際にその機能を管理画面に表示させるには、管理ディレクトリに PHP ファイルを配置したり、index.php を直接編集したりしなければなりませんでした。

この方法は、ちょっと大変ですよね?

そうなんです ! コードをいじるのが得意じゃない人にとっては、かなりハードルが高かったんです。

それに、WordPress (当時は b2) をアップデートすると、せっかく追加したカスタマイズが上書きされて消えてしまうことも…。毎回、手動で統合し直す必要がありました。

プラグインシステムの登場でカスタマイズが簡単に!

そんな問題を解決したのが、WordPress 1.2 で導入されたプラグインシステムです !

このシステムのすごいところは、「コアファイルをいじらなくても拡張できる」という点。

プラグインシステムのカギとなるのが「フック (hook) 」という仕組みです。

フックは、WordPress のコードのさまざまな場所に設置された「スイッチ」のようなもので、開発者はこのスイッチを利用して、好きなタイミングで独自の処理を実行できます。

フックには2種類あります。

  1. フィルター(filter)
    もともと b2 にもあった仕組みで、コンテンツを変更するためのもの。
    例えば、the_contentフィルターを使えば、記事の内容に特定の処理(例えば、特定のキーワードを自動でリンクに変える)を追加できます。
  2. アクション(action)
    WordPress 1.2 で初めて追加された機能で、特定のイベントが発生したときに処理を実行できます。
    例えば、post_publishアクションを使えば、記事が公開されたタイミングで通知を送ったり、他の処理を実行したりできます。

このプラグインシステムを作ったのは Ryan Boren。プロジェクトが進むにつれ、開発者の関わり方が変わっていく中で、Ryan は深く WordPress の開発に関わり続けました。

WordPress の共同創設者の1人である Mike Little も、Ryan の貢献には驚いたそうです。

「プラグインシステムが登場したとき、それまでのやり方からの大きな一歩だった。これが、WordPress が今のように進化する最初の重要なステップだったんだ。」

プラグインが登場したことで、WordPress のコア開発チームは「80/20ルール」を取り入れることができました。

「この機能、80%のユーザーが必要としてる?」

「そうじゃないなら、プラグインで追加すればいいよね!」

こうして、プラグインという仕組みが生まれたことで、非技術者でも簡単にカスタマイズできるようになり、WordPress はどんどん拡張しやすいツールへと進化していきました。

ちなみに、最初に登場した公式プラグインは「Hello Dolly」です。

「Hello Dolly」から始まったプラグイン文化

WordPress 1.2で導入されたプラグインシステムですが、最初の公式プラグインは「Hello Dolly」です。

管理画面の右上に、ルイ・アームストロングの「Hello, Dolly!」の歌詞をランダムに表示するだけのプラグインでした。単なるお遊びプラグインかと思いきや、実は「プラグインの作り方を学ぶためのサンプル」という意味もあったんです。

続いて、2番目のプラグイン「blogtimes」が登場。

このプラグインは、投稿された時間をバーグラフで可視化するもので、データの視覚化という新しいアイデアを示しました。

こうしたプラグインの誕生により、開発者たちは自由に新しい機能を作れるようになり、WordPress の拡張性が飛躍的に向上しました。

もうひとつの進化:国際化(i18n)

もうひとつ、WordPress 1.2 の大きな進化が「国際化(i18n)」です。

WordPress のコミュニティは最初から国際的であり、2004年1月のフォーラムには、アメリカ、イギリス、日本、香港、ニュージーランド、ブラジルなど、世界中のユーザーが参加していました。

しかし、当時の WordPress はまだ英語しか対応していませんでした。そこで、日本のコミュニティメンバー(Otsukare)が独自に多言語対応版を開発。これは日本語ユーザーだけでなく、他の言語を使いたい人たちにも人気がありました。

ただ、こうした独自対応版が増えると、開発が分裂してしまう可能性がありますよね。

この問題を解決するために、Ryan Boren が取り組んだのが「gettext」というシステムの導入です。

gettext は、翻訳するべきテキストをすべてリスト化して、翻訳者が簡単に対応できるようにする仕組み。これによって、WordPress 本体のコードを変更することなく、多言語対応ができるようになりました。

国際化(i18n)のポイント

  • gettext を導入し、多言語対応を可能に
  • 翻訳可能な文字列を .pot ファイルとして管理
  • 翻訳者が .po.mo ファイルを作成すれば、どの言語でも利用可能

そして、2004年5月19日、WordPress 1.2の正式リリース前に、Pankaj Narula(panjak)がgettext方式を使った最初の完全ローカライズ版(ヒンディー語)を公開しました。 これをきっかけに、フランス語・ノルウェー語・日本語など、多くの言語へと拡大していきました。

特に日本では、WordPressがリリースされたわずか6か月後の2003年12月に、日本語版コミュニティサイトが開設されました。日本の WordPress コミュニティの初期メンバーだった高野直子(Nao)さんも、国際化の重要性を感じていた一人です。

「オープンソースのプロジェクトって、翻訳が後回しにされることが多いんだけれど、WordPress は最初から国際化を大事にしていた。それが、私がこのプロジェクトに関わろうと思った理由の一つです。」

WordPress 1.2の遺産:現代のWordPressへの道

WordPress 1.2 が登場してから約20年が経ちましたが、その影響は今も色濃く残っています。現在の WordPress エコシステムを支える「テーマ」と「プラグイン」の文化は、まさにこのバージョンから始まったものです。

プラグインの進化

WordPress 1.2 で導入されたプラグインは、現在では6万以上が公式ディレクトリで公開されています。SEO対策、セキュリティ強化、eコマース機能など、様々な目的のプラグインが存在し、WordPress の可能性を無限に広げています。

特に注目すべきは、WooCommerce や Contact Form 7 のような「メガプラグイン」の存在です。これらのプラグインは、それ自体が一つのプラットフォームとなり、さらにその上に拡張プラグインが開発されるという「プラグインのエコシステム」を形成しています。

国際化の成功

国際化対応により、WordPress は現在180以上の言語に翻訳され、真のグローバルプラットフォームとなりました。特に、非英語圏での普及に大きく貢献しています。

日本においても、WordPress は企業サイトからブログまで幅広く利用されており、国内のCMSシェアでトップを走り続けています。これは、早期から国際化に取り組んだ成果と言えるでしょう。

開発哲学の確立

WordPress 1.2 で確立された「80/20ルール」は、その後の WordPress 開発の指針となりました。コア機能はシンプルに保ち、拡張性を重視するという考え方は、現在も「決定よりも設計に重点を置く」という開発哲学につながっています。

また、「コードは詩だ(Code is Poetry)」という WordPress の有名なスローガンも、この頃から重視されるようになりました。美しく、効率的で、理解しやすいコードを書くという哲学は、WordPress 開発者コミュニティに深く根付いています。

WordPress 1.2 がもたらしたもの

WordPress 1.2 は、単なるブログツールだった WordPress を、拡張性の高いパブリッシングプラットフォームへと進化させました。

WordPress 1.2の主な影響

  • プラグインシステムの導入でカスタマイズが簡単に
  • 「80/20ルール」によりコア開発の方向性が明確化
  • プラグイン文化の誕生により開発者が自由に機能を追加
  • 国際化対応(i18n)で世界中のユーザーが利用可能に

現在の WordPress の基盤は、このバージョンで築かれたと言っても過言ではありません。

今後も進化を続ける WordPress ですが、その原点とも言える WordPress 1.2 の革新を知ることで、より深くこの CMS を理解できるでしょう。

まとめ

WordPress 1.2 は、単なるブログツールではなく、拡張性・柔軟性・国際性を備えたプラットフォームへと進化させる大きな一歩でした。

現在、WordPress は世界中のウェブサイトの43%を支えるまでになりましたが、その基盤はこのバージョンで確立されたのです。

もし、あなたが WordPress を使っているなら、その歴史を知ることでより深い理解につながるでしょう。

こうして、WordPress は「みんなのもの」になっていったんですね!

WordPress の歴史について、もっと知りたい方は、公式サイトの WordPress History ページもチェックしてみてください。

WordPress 1.2 から始まった革命は、今も続いています。次の10年、WordPress はどのように進化していくのでしょうか。一緒に見守っていきましょう!