FlatPressに乗り換える理由
ThingamablogからFlatPressへ
当サイトは、2011年からThingamablogというJavaベースの静的サイトジェネレータで構築されてきた。このたび、Yahoo!ジオシティーズ(和塩)がサービスを終了することに伴い、無料サーバーへ移転させることにしたが、これを契機にThingamablogの利用を止めようと思っている。そして、FlatPressというPHPベースのフラットファイルCMSに乗り換えるつもりでいる。なぜか。
- Thingamablogの更新が止まっている。これが一番大きい理由。更新が止まれば、ユーザーが減り、新しいテーマに変更したくても誰も開発していないという状況に陥っている。だからモバイルフレンドリーなレスポンシブデザインに変更したくても、自作しなければならない。
- 移転予定の無料サーバーではPHPが利用できる。このPHPを使わない手はない。なお、PHPを使わず、Thingamablog以外の静的サイトジェネレーターで構築するという手もあるが、HugoやJekyllといった最近の静的サイトジェネレーターを試したところ、ギークなエンジニア向けのものに映り、しっくりこなかった。私はエンジニアではない。
- DBMS依存のCMSは向いていない。無料のDBMSは安定性の面で信用しづらい。また、バックアップの手間を鑑みるに、DBMSにMySQLやSQLiteを利用するCMSは候補から外れる。簡単に言えば、WordPressはあり得ない。したがって、フラットファイルCMSが候補に挙がってくる。
- 重量級のCMSは向いていない。無料サーバーのFTP転送は安定性の面で信用しづらい。バックアップの手間を鑑みるに、軽量級のCMSのほうが向いている。
FlatPressを選択した理由
数多あるPHPベースのフラットファイルCMSからFlatPressを選択したのは、以下の理由からである。
- オープンソース
- 開発が継続中、てかPluXml並みに活発
- ユーザーがそこそこ存在
- ギークなエンジニア向けではない(私はエンジニアではない)
- テーマがそこそこ揃っている
- ファイルサイズが5MB程度と軽量
- 多言語対応(2バイト文字対応)
- そこそこ日本語UI
- フィード機能・サイトマップ機能・コメント機能・検索機能を有している
同様の理由で候補に挙がったフラットファイルCMSには、次のようなものがあった。
また、プラグインを利用することでブログ的なCMSにもなるDokuWikiあたりも候補に挙がったが、これらのドキュメントやコードを見て「これなら何とか扱えそうだな」と最も思えたのがFlatPressだった。つまり、自分にとって最も学習コストが低そうに見えた。一方、フラットファイルCMS界隈で最も有名なGrav CMSは相対的に重量級で、前述の候補から最初のほうに外れた。
なお、FlatPressはテンプレートエンジンにSmartyを採用しており、Smartyの日本語情報がネット上に多かったのも理由の一つになった。Twigも学習コストが低そうに見えたが、LaravelのBladeはとっつきにくそうだった。
FlatPressの欠点
FlatPressの致命的な欠点は、動作環境を選ぶこと。環境によっては正しく動作しないこともあった。コードを追ってもわからなかったが、FlatpressがPHPのセッションをうまく制御できないウェブサーバーで発生するっぽい。だから動作したらラッキーくらいな感覚で。
加えて、PrettyURLsは、日本語(2バイト文字)による記事の題名を上手くURLエンコードしてくれない。だから題名は英語でつけることにした。