• twitter
  • Facebook
  • はてなブックマーク
2012年02月20日(月)

[CMS] オープンソースCMSいろいろ

オープンソースCMSについてのメモです。Linux向きのPHPで記述されたCMSや、WindowsServer2008向けのASP.netで記述されたもの、ブログタイプ、ネットショップ構築タイプ、SNS構築タイプなど様々なものがあり、興味があったので何個かインストールして試用してみました。私の勝手な印象を書いています。修正など全然するので、訂正箇所などメールかコメントでお知らせいただけると助かります。

ブログタイプ

WordPress
このブログで使っています。言わずもがなwordpressです。普及率も高いし説明不要だと思いますが、手軽に導入できてプラグインの種類も豊富なブログ構築用のCMSです。やはりブログに特化しているため、ブログを作るための構造がベースになっています。wordpressは、actionというフック処理を行って内的制御がされています。javascriptのイベントハンドラとコールバック関数の関係に似ていると思います。各種プラグインも特定のタイミングで呼出しを行い、デフォルトの機能をオーバーライドするような形て制御されています。wordpress自体はなかなか使いやすかったりもするのですが、グローバル関数がやたら多く、ローカル化やマルチサイト用のための分岐処理、100種類近くあるフィルター・アクションの呼出しとコールバック検索、優先順位判別など、1ページを出力するまでのプロセスが結構煩雑です。テーマ中にPHPを直接埋め込んで、グローバル関数制御で操作できる点は良いけど、パフォーマンス的にどうかなー?…なんて思ったりしつつ使っていたりします。
geeklog
シンプルなUIでブログを構築するタイプのCMSです。公式サイトではtarballのみの配布になるため、基本Linuxにインストールするようです。windowsでも動きました。インストール手順で注意すべき点がいくつかありますが、簡単に導入できます。雰囲気的には、はてなブログっぽいかんじです。ちなみに、windowsでテストしてみる場合のメモを書いておきます。
  • 1.ダウンロードしたtar.gzアーカイブをwinrar等の解凍ソフトで解凍します。
  • 2.解凍したディレクトリ内の「public_html」ディレクトリをDocumentRoot上に配置します。リネームも可能です。(VirtualHost運用の場合は、中身を全部放り込めばいいと思います)
  • 3.解凍したディレクトリそのものもリネームして同階層に配置します。(本来、DocumentRoot上でなく外に配置してセキュアに利用するようですがテスト環境のため適当です)
  • 4.public_htmlをリネームしたディレクトリにアクセスするとインストーラが起動します。インストールを途中でミスすると、エラーが発生して起動しなくなったりします。
  • 5.最初のログインアカウントですが、ユーザー名がAdminで、パスワードがPasswordになっているのでログインします。(このゲストアウカウントはセキュリティチェックを通過していないため、管理画面レイアウトを変更すると利用不可になる場合があります)
  • 6.セキュリティを通過させるために別のアカウントを用意して利用します。
日本語化やドキュメントがきちんと整備されていて、PostgreSQLにも対応しています。あまりグラフィカルではないけど、内部構造のMVCもシッカリしていて、硬派なかんじ?と思いました。内部的にPEARが利用されています。
MovableType
MTはwordpressに比べると難易度高めではありますが、3PLの開発業者様にサポートをおまかせできる安心感があると思います。プラグインの開発体制や、ラインセンス定義がシッカリしている分、ビジネスライクに使えるCMSだという反面、個人規模では少し手を出しにくいかなぁという印象です。私個人としてはPerlで記述されているのがネックで使っていません。Perlの場合、サーバーによってモジュール等対応していないケースもあるので、シッカリ使っていこうと思ったら、それなりに柔軟性のあるサーバーを借りて、開発済みのプラグインライセンスを購入するなどが必要になるため、結構費用がかかるかと思います。オープンソース版のものもありますが、プラグインは別売りのため個人向けというかんじだと思います。

ECサイト構築タイプ

EC-Cube
最近のECサイト構築CMSでは、定番だと思います。国内で開発され、サイト構築事例も豊富で、安定したECサイトの運用が行えます。構造はSmartyがベースで、テンプレートファイルをデザイナーレベルで構築しつつ、動的なものはSmarty用のプラグイン追加で対応していくというかんじです。あらかじめ用意された公式モジュール等も多く、決済の充実度や管理画面の使いやすさ、拡張性の高さも魅力だと思います。EC-Cubeテンプレートは、PC版・スマホ版・携帯版と分かれていて、テンプレート作成はなかなかの労力を要します。単純に作業量が多いせいですが、元から日本語対応になっており、管理画面自体の拡張性が高いので、物品の販売以外にも不動産データ管理や店舗情報などのデータ管理などにも使える点もポイントです。
SoyShop
SoyCMSに組み込みアプリケーションとして追加するタイプの国産ネットショップ構築ツールです。SoyshopはSOYCMSのみの対応アプリケーションのため、現在は1の方で構築する必要があるようです。SOYCMS対応のアプリケーションは色々あって、1つのSOYCMSを使って、サイト構築とネットショップ運営をマルチサイト的に運用したり、連動したりも出来ます。ネットショップの機能的には比較的シンプルですが、決済モジュールなども色々用意されていて、SOYCMS向けの他のアプリケーションの導入も簡単だと思います。アプリケーション単位での管理も可能で、お問い合わせフォームアプリケーションをメーリングリストアプリケーションと連動したり、それをSOYShopに連動したりなども出来ます。

WEBサイト構築タイプ

Joomla!
海外で人気の高いWEBサイト構築を行うためのCMSです。インストーラを起動してみるとわかりますが、インストール画面から綺麗です。かなりビジュアル化が進んでいて、管理画面も綺麗で使いやすく、わかりやすいと思います。管理画面を日本語対応する場合は、パッチを充てる必要があります。データベースのテーブル構造も、1つ1つわかりやすい名称なのでデータ管理に戸惑わなくて済みそうです。インストール作業はwordpressと同じレベルで簡単にできます。(もしかしたらPHPの設定が必要になるかもしれません)パッケージはMVCで構築されています。サイト内検索、capchaやフォーム追加、wysywigエディタ種別やキャッシュ出力などがプラグイン機能として採用されており、管理者毎に操作レベルを設定したり、マルチサイトの場合はサイト毎での設定を行う事が出来ます。かなり詳細なレベルで柔軟に制御を行う事ができる上、各テーマで使うブロック制御にも細かく対応しています。パフォーマンス設計やSEO対策も考慮されていて、ダイナミック編集にも対応しており、管理画面にログインせずにログイン状態でページを閲覧すると、Editリンクが貼られ画面上に配置されたwisywig上で作業できてしまいます。Joomla!自体のフレームワークを理解していないとテーマ作成は難しいと思いますが、とにかく高性能でハイクオリティといった印象です。
Drupal
日本語版のDrupal6をインストールしてみました。比較的軽快でシンプルな作りだと思います。管理画面ではモジュール(機能)設定と、コンテンツ管理の2つのセクションに分かれています。多少ホームページの知識がないと管理が難しいかもしれません。(facebookのノートページが管理できれば利用できると思います)構成は、モジュールベースでWordPressと同じくグローバルな関数が多く含まれていますが、分類は細かく定義されています。Joomla!とよく比較されているようですが、難易度的にはDrupalの方が簡単そうだと思いました。
SOYCMS2
比較的新しい国産のCMSです。SOYCMSのUIデザイン良くなればいいなーって勝手に思っていたところ、UIが綺麗になったSOYCMS2があったのでテストしてみました。独自タグの書式が間違っていたのか、出力が正常に出来ませんでした。SOYCMS系は独自タグの書き方がちょっと独特だったり、ラベル・ディレクトリ・テンプレートなどの概念が少しわかりづらい点があったりしますが、SOYCMSもSOYCMS2もマルチサイト運用がとても簡単で、セキュアに動きます。また、SOYSHOP単体や、掲示板のみの利用、フォームのみの利用など幅広い使い方もできると思います。SOY2DAOやAction等のクラスドキュメントが整備されたら、プラグイン開発もしやすくなると思うので今後に期待大です。

関連投稿記事

Comment: