2008年5月16日 2つのe(ExpressionEngineとeZ Publish)

取締役兼システム本部本部長
藤田 拓
(合同会社メディアジャム 業務執行責任者)

自分がCMS案件にかかわってきて、3、4年がたちます。まだまだ勉強することが多く、コンテンツを管理するということの奥深さに驚くばかりです。そのような日々の中で、自分がかかわってきた2つの「e」から始まるCMSツールの話をさせていただきたいと思います。一つは「ExpressionEngine」。米国オレゴン州のEllisLab社(旧 pMachine社)の製品で、強力なBlogツールだったpMachineを発展させた軽快なWebCMSです。もう一つは「eZ Publish」。ノルウェーのeZ Systems社による本格的WebCMSで、ヨーロッパではかなりの人気を持ち、高価な商用CMSとの競合として挙げられるものです。

ExpressionEngine

手軽にWeb2.0サイトを

上でもふれましたが、ExpressionEngineはBlogツールをベースに誕生しています。そんな出発点もあってか、ExpressionEngineの拡張機能のリストをみると、Forum、Wikiをはじめ、diggライクなソーシャルブックマーク機能やSNS的機能等がEllisLab社自体から、さらにサードパーティからもリリースされています。これらをベースにコミュニティサイトを作るのはとても簡単で、マルチブログ+Forum程度のものならば、構築工数が1カ月もあればいけることもあるであろうという軽快さです。最近はCGMを取り込んだWebサイトへの要望が珍しくありませんが、そういった時にExpressionEngineはとても心強いツールとなってくれます。

BlogをCMSまで昇華させたコンテンツ管理機能

私も当初は他のBlogツールを利用したBlog構築を行っていましたが、“CMS的な利用をしたい”というお客様からのご要望をいただくと、壁にぶち当たることが度々ありました。

そんな中で、ExpressionEngineを見つけた時の「Bingo!」感は忘れられません。特にどういった点がそう感じさせたのか、以下に挙げてみます。

入力項目のカスタマイズ(カスタムフィールド機能)
通常、Blogツールの入力項目は「タイトル」「本文」「追記」「概要」「キーワード」くらいのものです。しかし、情報の要素を更に追加したいというご要望があると、Blogツールは途端に限界を迎えてしまいます。
しかしExpressionEngineは入力欄(フィールド)を追加・編集することができ、かつそのフィールドの種類もinputやtextarea、checkboxやdropdown、file、 date等々というさまざまな種類から選ぶことができます。
バージョン管理
長文の記事を入力していたのにちょっとしたオペレーションミスで空欄のまま保存してしまったら通常のBlogでは元にもどせません。しかし、ExpressionEngineでは記事、およびテンプレートを複数のバージョンとして保存することができるため、記事やテンプレートの作成/編集も安心して行えます。

そのほか、ユーザー権限の設定や簡単なワークフローおよび関連記事機能など、BlogというよりもCMSとしての機能が、サイトの運用設計を大きくサポートしてくれます。

ExpressionEngine2.0

ExpressionEngineの開発元であるEllisLabは、PHPのフレームワークであるCodeIgniterも開発しています。このCodeIgniterはRuby On Railsライクな軽快な開発を行うことができるもので、数あるPHPフレームワークの中でも人気のフレームワークです。現在、ExpressionEngineは1.6ですが、近くリリースされる2.0はこのCodeIgniterで再構築されます。この融合は拡張機能の開発やカスタマイズの可能性を拡げてくれることは間違いありません。このことが更なるExpressionEngineの人気拡大に繋がるのではないかと考えます。

eZ Publish

本格的CMSとして

ヨーロッパ圏は日本と比べてCMSという言葉の認知が以前から高く、多くの企業サイトが「CMSありき」でサイト設計/構築されています。そんな土壌の中で生まれたeZ Publishには、CMSとしての基本機能である記事作成・編集、入力項目設定、バージョン管理、ユーザー権限設定、ワークフロー、サイト構造管理、作業履歴記録は当然のごとく備わっており、それぞれがBlog起源のCMSと比べ遥かにパワフルで、かつ、商用CMSにひけをとりません。

ビジネスをにらんだ拡張機能、カスタマイズ

eZ Publish自体、CMSとしての強力なパッケージなのですが、その拡張機能を利用したカスタマイズ性も注目されます。また、ビジネス利用をにらんだ拡張機能が多く見られることが特徴でしょう。今回はそういった拡張機能について少し挙げてみたいと思います。

他システムとの連携
ヨーロッパではCMSの認知と利用が高いことは上で述べましたが、このことは合理的な運用を求める気質を感じさせます。実際のところ、ドイツのeZ Partnerから話を聞いたのですが、ヨーロッパでのCMS利用ケースには他システムとの連携を求められることが多いそうです。そういった背景もあるのか、eZ PublishではERPやCRM、 出版システムとの連携の実績も多数あり、かつ、それらを目的としたExtensionもパートナーからリリースされています。
Web2.0を含む新しいトレンドの実現
Web2.0的機能実装の要望がビジネスとして増えてきているという流れはCMSツールにも当然及んできており、eZ Publish自体もいち早くコメントやタギング、Forumの機能を実装しました。また、拡張機能としてSNSサイトを実現したり、Wikipediaライクなナレッジサイトを構築するもの、また、iGoogleのようにドラッグ&ドロップでレイアウト変更できるポータルページを実現するExtensionもリリースされています。

PHPのコア技術者が開発しているeZ Componentsとの融合

eZ Systems社ではeZ Componentsというフレームワークもリリースしています。eZ Componentsは、PHP開発のQA(品質保証)のツールであるXdebugの主要開発メンバーDerick Rethansがリーダーとしてプロジェクトを進めていますが、それ以外にもPHPテストツールの代表格であるPhpUnitの開発メンバーSebastian Bergmannの名も見られます。こういったPHPの実力者がかかわっていることもあり、海外のPHP Conferenceや雑誌でもeZ Componentsはよく取り上げられ、そのクオリティや将来性が非常に期待できるフレームワークといえるでしょう。現バージョンのeZ Publish 4からはeZ Componentsのインストールが必須要件となっており、今後その融合が更に進むというロードマップがアナウンスされています。この方向性のもと、eZ Publishも更に強力なCMSツールとしてパワーアップすることは間違いありません。

それぞれの共通点、相違点

ここまでExpressionEngineとeZ Publishの紹介をさせていただきました。いずれもオープンソースとして開発され、開発元が音頭をとりつつも、コミュニティやパートナーがその成長をサポートしているモデルという点では同じであり、今後も双方とも機動力の高い機能実装を行っていくと考えられます。

また、いずれも自社開発フレームワークでCMSツールを再構築するという流れがあり、双方ともより多くのDeveloperをとらえつつ、より柔軟なCMF(コンテンツマネジメントフレームワーク)として認知されていくことでしょう。

また、片やBlogツールとしての出発からCMSの機能を持ったもの、片やCMSとして誕生しつつ日々のWebのニーズの多様化で機能を追加してきているもの、といった育ちの違いは明らかに感じます。米国発とヨーロッパ発という点もその傾向を表しているかもしれません。その違いは徐々に埋まる傾向もありますが、私としては確固たる個性として、それぞれの魅力が強まっていくことを期待しています。

今後も弊社では2つの「e」から始まる名を持つCMSの動向を追いつつ、それぞれにおいて、よりお客様のニーズに応えることのできるExtension開発、および実装手法を追い求めていきたいと考えております。

メールニュース登録

メールニュースでは、本サイトの更新情報や業界動向などをお伝えしています。ぜひご購読ください。