Blog

ブログ

WordPress、好きじゃないんだけどな

webbinblog0901

今のブログは、「Sandbox for MovableType」テンプレートセットを一部改編したものです。

Sandboxはもともと、WordPressのカスタマイズ用テーマでした。
最近の個人ブログツールのシェアは、MovableTypeから、このWordPressに大きく流れている状況です。
欧米では、既にシェアは逆転しているのですが、バージョンアップに伴って、日本でも本格的になってきたようです。

ほぼ毎日、仕事で両方を利用している私としても、

MovableType=小規模→中規模の企業向けCMS
WordPress=個人→小規模のブログ

という住み分けが最適だろうと思います。

なので、このブログももっと更新しやすくて、PHPで気軽に拡張できるWordPressに切り替えた方が良いのではないかと考えはじめていますが…

個人的に苦手なのです、WordPress。
WordPressへの不満などグダグダ書き出してみます。

内蔵の関数がひどい

HTMLタグのような書式で記述したものを内部変換させるMovableTypeに対して、WordPressはPHPのプログラム(ユーザー関数)をそのまま記述します。

例えば <?php bloginfo(‘name’) ?> というのは
「name」という引数を渡すとブログ名を返す、「bloginfo」という関数
という意味です。

PHPを勉強している人にはわかりやすい仕様なのですが、いろいろな人の手を経て何度も拡張を繰り返してきたためか、関数の仕様に一貫性がありません。

bloginfo のような、引数がほとんどないものはいいのですが、何個もの引数を要求し、しかも順番が間違ってると動作しない関数も多く、あとでテーマファイルを見ても、引数だけだとそれで何をしようとしたのか、さっぱり見通しがききません。

「&lorem=TRUE&ipsum=0」のように、必要なモディファイアだけ指定する「クエリ式」が使える関数も増えたとはいえ、このクエリ式が使える・使えない関数もまたバラバラで、新しい情報をまめにチェックしなければいけません。

文章整形フォーマットが使いにくい

WordPressの本文自動成型は、かなり融通がきかないことで有名です。
普通の文章なら問題ないのですが、改行込みのHTMLタグを書いたり、アフィリエイトバナーを貼ったりすると、大抵思うようにいきません。

最新版の2.7で向上するかと思いましたが、過去のバージョンとの互換性が足を引っ張っているからか、あんまり良くなっていません。

この辺りはプラグインの追加でも何とかなるのですが、できればデフォルトの方を何とかしてほしいものです。

2009/01/08追記:
WordPress2.7になって、自動整形機能はだいぶ改善されてきました。
正確にマークアップしたHTMLの改行タグを削除するようなふざけた挙動はなくなりましたが、コメントなどの連続ハイフン、textarea内のHTMLソースなどはやっぱり正確に表示できません。

独自タグの範囲内を成形させないRaw HTML、カスタムフィールドの内容を本文に入れ込む Content Ex等の併用が無難です。

本文と追記を別個として扱えない

MovableTypeをはじめ、HTMLを編集できるレンタルブログなどは「本文」と「追記」に対して、別個の独自タグが提供されています。
これは使い方によっては便利なもので、本文と追記に別の役割を与えることで、特殊なウェブサイトを簡単に構築することができます。

ところがWordPressは、更新を簡単にすることに重きを置いているからか、本文と追記の扱いが非常にあいまいで、また、本文だけ・追記だけを自由に切り出すことはできません。

excontentプラグインを作ったのも、そのような経緯からです。

区切りが本文中の<!–more–>だけなので、うっかりHTMLタグで囲んでしまうと、一覧ページが大変なことになるのも悩みです。

コーディングの融通が利かない

WordPressは、1つの命令文で大きな固まりのHTML群を書き出す関数が多くあります。
すぐにブログを構築したいときにはとても良いのですが、デザイン上の理由でコーディングを細かく修正しようとすると、コアファイルを参考に、追加の関数を自分で作成しなければなりません。

静的ファイルが残らない

WordPressは、アクセスするたびにページを生成するのが基本です。
サーバー内にページの実体はありません。
このため、頻繁に更新するブログほど、どんどん表示が遅くなっていきます。
(MovableTypeは再構築が遅くなるのでどっこいどっこいですが)

現時点ではWP Super Chacheプラグインがよく紹介されていますが、キャッシュ生成はWordPressのコアに関わるため、バージョンが変わると動かなくなってしまったり、サーバーとの相性が悪くて最初から動作しないということも多いようです。

安全性に難がある

初期状態でインストールすると、ユーザーIDはかならず「admin」になり、管理画面のURLはブログのルートと同じ階層になります。
これだと、推測ができないのはパスワードだけなので、セキュリティ面ではかなり危ういです。
WordPressの中の人にはもっと、この辺を啓蒙していただきたいものです。

もちろん、私はWordPress設置時は管理画面の階層、IDのどちらも変更しています。

中の人々の態度がでかい

すいませんすいません主観です。

和訳のせいかもしれないですけど、なんか偉そうじゃないですかあの人たち。

「2.7にはコルトレーンという偉大な名前を冠しましたよー」
「私たちはこーんなスバラシイツールを無償で提供してますよー」

ああなんかいやだむずむずするかゆいうま。


他にもいろいろとあるのですが、これらを勘定に入れても、PHPベースの簡単さと、オーバーライド方式のテンプレートは魅力的です。
MovableTypeの管理画面がどんどん重くなっていることや、Perlを勉強する予定がないこと、携帯対応の問題(これでかい)もあり、ウェビンブログはWordPressベースになるかもしれません。
(Sandboxテーマを入れれば、移行にもそんなにかからないしね)

需要があるのは確かだし、ある程度は妥協して、いい点をガンガン伸ばしていくしかないですね。