ブログ世界のニューフェース、Serendipity 1.0の登場

Serendipityとは、ブログなどのサイト運用を目的としたPHPベースのコンテンツ管理システム(CMS)であり、すべてのブロガーを満足させるであろう機能が装備されている。数年間の準備期間を経て、Serendipity開発チームがバージョン1.0を公開したのは6月15日のことであった。ここでは、今回の1.0リリースで具体的に何が行えるのかについて解説をしよう。

インストール手順は非常に簡単で、大部分のユーザは数分で完了するはずだ。以前にWordPressやDrupalなどのブログ用ソフトウェアをインストールした経験のある者なら、特に問題はないだろう。Serendipityの場合、デフォルトの設定ファイルに手を加える必要はなく(PHP設定が適合しない場合は別)、データベース作成、Serendipityのtar書庫の解凍、Serendipity用URLのブラウザへの登録だけを行えばよい。特にSerendipityが他の多くのオープンソース系CMSパッケージと異なる点を挙げるとすれば、それはデータベースバックエンドとしてMySQL、PostgreSQL、SQLiteを使用できることだろう。

Serendipity開発チームは、他のCMS/ブログ用プラットフォームからの移行ユーザに対する配慮も忘れていない。代表的なGeeklog、b2Evolution、Blogger、Movable Type、WordPressを始め、その他のRSSや各種のCMS/ブログ用ツールをサポートしたインポート用ユーティリティが用意されている。なおSerendipityへのインポートはファイル単位またはデータベース単位で行えるが、どちらの方式が使えるかは相手先のCMSによって異なる。

この機能をテストするにあたって、約2年分の投稿記事が詰まっている私の個人ブログからのデータ取り込みを試してみた。ただしWordPressにはすべての投稿記事を一度にエクスポートする機能が用意されていないので、今回はMySQLデータベースからのクイックダンプを行ってから、Serendipityをインストールしたテスト用マシン上でデータベースを再構築するという手順を経ている。準備の完了後にWordPressデータベースとの接続に必要な情報をSerendipityに登録すると、すべてのブログデータが問題なくインポートされた。

投稿記事の編集と管理

Serendipityでのブログ操作では、プレインテキスト形式のエディタか、HTMLAreaというWYSIWYG形式のエディタのいずれかを使用できる。デフォルトはプレインテキスト形式エディタであるが、他のモードに切り換えるにはPersonal Settingsで変更をすればよい。

私の個人的なブログ記事の作成スタイルとしてはプレインテキスト形式エディタを使うのが普通であったが、この方式はどちらかというと少数派に属しているようなので、今回はプレインテキスト形式エディタとHTMLAreaの両方を比較してみた。

大方においてHTMLAreaは問題なく動作してくれたが、画像の追加やテキスト背景色の変更などの機能に関しては、若干のトラブルに遭遇した。例えばSerendipityにおける投稿記事への画像の追加では「insert image」ダイアログまたはメディアライブラリを介して画像を選択するのだが、ダイアログでの画像指定はURL指定だけが可能であり、ローカルファイル名は使えないのだ。

また、ファイルをアップロードする場合は、最初にメディアライブラリに移動してから、その後で「insert image」ダイアログで該当する画像を指定する必要がある。その際に気になったのは、メディアライブラリにせよ「insert image」ダイアログにせよ、いずれの方式でも画像をホットリンクできるよう設定されていることである。

実際、メディアの追加用ページには、画像の掲載および使用法として「hotlink to server」という、そのものズバリの名称のモードが用意されている。もっとも、このページの下端を見てみると、「ホットリンクをする場合、相手先のWebサイトから許可を得るか、あるいは自分のWebサイトを指定してください」という旨の免責事項が記されているが、現実問題としては、たいていのユーザはこうした注意事項を無視しており、他人の画像に無許可リンクを張る行為が日常化しているのが実際だ。こうした機能を削除してユーザによるホットリンクを禁止するという選択肢は、Serendipity開発チームの望むところではないのかもしれないが、そうしておくことは無許可リンクを抑止する方向に寄与するはずである。

もう1つのトラブルは、投稿記事のテキスト背景色を変更しようとした際に遭遇したものだ。現行のHTMLAreaでは、フォント色の変更は行えるものの、なぜか背景色については指定した設定が反映されないのである。

プレインテキスト形式のエディタについては特にトラブルに遭遇しなかったが、1点だけ腑に落ちない箇所がある。エディタの下部に「Advanced Options」という名前で空白のボックスが用意されているのだが、これは単なるボックスで何のオプション設定も行えないのだ。

複数の人間が記事の編集や投稿をするサイトの場合、Serendipityには細かなアクセス制限を施せるユーザ管理システムが用意されている。各ユーザに与える権限としては、例えば投稿記事の作成は行えるが、その掲載まではできないとか、あるいはサイトへの投稿や編集は行えるが、管理作業はできないといった指定が可能だ。デフォルトで用意されているグループ設定では間に合わない場合は、Serendipityに用意されているグループエディタ機能を使って、独自の設定を施した新規グループを作成することができる。

Serendipityの機能の拡張

Serendipityには(一部の例外を除いて)有用なプラグインが多数付属している。用意されているプラグインの数は膨大な数に上るので、これらのすべてを紹介するのは現実的ではない。ここでは、いくつかのSerendipityに特徴的なものを解説するだけにとどめておこう。

大部分のブロガーおよびサイト管理者にとっては言わずもがな事だが、コメント投稿を許可しているサイトにとっての頭痛の種の1つにコメントスパムがある。Spam Protectionプラグインはこうしたコメントスパムを防止するためのもので、コメント管理用のホールドオプション、CAPTCHAによるコメント監視、ワードフィルタ、Akismetのサポートなど、各種の機能が用意されている。逆に言うと、SerendipityのSpam Protectorプラグインに用意されていない機能として思いつくのは、WordPress用のBad Behaviorプラグインに相当するものくらいで、これはAkismet到達前にスパムを阻止する機能である。

Serendipity用のプラグインは、パッケージに同梱されているもの以外にも多数存在しているが、こうした膨大なアーカイブ全体にアクセスするために用意されているのが、Serendipity Plugin Access Repository Tool And Customization Unification System(SPARTACUS)である。実際にこの機能を試したところ、多数の興味深い新規プラグインの存在を確認することができたが、こうした新規プラグインの検索時にはバックエンド処理が大幅に低速化してしまうよう感じられた。

HTMLAreaエディタが気に入らない場合は、FCKeditor、TinyMCE、XINHAなどをプラグイン付きで使用することもできる。ただし、置き換え用パッケージのダウンロードとインストールは手作業で行わなければならない。

これらプラグインシステムの管理は非常に操作性に優れており、各プラグインのオンとオフは、クリックするだけで切り換えることができる。また個々のプラグインについては、その機能説明を始め、バージョンや制作者に関する情報が表示されている。

これはどのようなCMS/ブログ用ツールにも当てはまることだが、サイトのテーマや外観をいかに簡単に変更できるか、事前定義されたテーマがどれだけ用意されているかというのは、重要なポイントである。その点、Serendipityに付属しているテーマの数はそれほど多くはなく、その一部はMovable TypeやWordPressなどのメジャーソフトウェアの使い回しと言うか模造品のようである。例えばSerendipityの付属テンプレートにあるKubrickというものは、WordPressのデフォルトテーマと瓜二つで、名前まで同じだ。

SPARTACUSをインストールすると、Serendipityアーカイブに収録されている多数のテンプレートにアクセスできる。これだけの数が揃っていると、自分の趣味にあったテーマの1つや2つは確実に見つかるだろう。万が一見つからない場合でも、独自のCSSやSmartyを用いることで、好みのテーマを作成することができるはずだ。

Serendipityは絶対のお勧め品か?

実際にSerendipityを数日間使ってみた結果、その機能が非常に気に入ったのも確かだが、他のCMSやパーソナルパブリッシングプラットフォームと比べて、特別に優れている点が見つからなかったのも事実だ。既にWordPress、Drupal、GeekLogなどの優れたオープンソース系ブログ管理用プラットフォームを使用しているユーザであれば、あえて乗り換えを勧めるだけの理由も存在しないだろう。そうではなく、これからサイト構築をしようというユーザであれば、Serendipityを試してみる価値はあるはずだ。

そもそもSerendipity開発チームは、他のCMSプラットフォームとの比較に対して神経質になりすぎているのではないだろうか。実際、Serendipity開発チームの用意した機能一覧ページを見てみると「Why Serendipity is better than…」というセクションが設けてあり、他の競合CMSプラットフォームよりSerendipityが“優れている”点が説明されている。

Serendipity開発チームが売り物の1つとしているものにBSDライセンスがあり、確かにこれは内容的に多くの人間が歓迎するであろうライセンスなのだが、それとあわせて同チームは、SerendipityがWordPressより優越している理由として「Serendipityは特別な許可を得ることなく商用サイトに使用できます」と説明している。実際には多くの“商用”サイトはGPLライセンス下にあるソフトウェアを用いて構築されているのだから、何を論拠にこうした誇大広告が展開されているかよく分からないのだが、いずれにせよライセンス云々のバッシングをする暇があったのなら、Serendipity開発チームはソフトウェア本体の改善により多くの時間を割くべきだったのではないだろうか。

それ以外の点において、私はSerendipityを大いに気に入っているものの、今すぐ乗り換えることはないだろう。確かにSerendipityは優れたパッケージではあるが、現在使用しているツールよりも優秀だとまでは言えないからだ。もっとも将来的にはこうした評価が覆る可能性もあるので、今後のリリースについては注目し続けるつもりである。

NewsForge.com 原文