WordPressのプラグライン開発をし始めてしばらく経つ。
で、さらに色々とわかってきたのだが、
WordPressは本体の設計がクソだ。
なんか、前にも同じようなことを書いた気がするが、
知れば知るほどクソだ。
いや、簡単な処理をちょっと加える程度なら、
これでもいいのかも知れない。
というか、逆に楽だろう。
でも、
そこそこちゃんとした機能を実装しようと思うと、
とたんに面倒なことになる。
元がMVCのような役割別にクラスが設計されておらず、
機能別(ユーザー編集なら、user-edit.phpとか)にクラスやファイルが別れている。
クラスならまだいいほうで、
グローバル変数とグローバル関数のオンパレードだったりするので、もうぐちゃぐちゃである。
そうだなぁ。
Windowsで例えるなら、MFCが誕生したばかりで、
MFCとWin32APIを組み合わせてプログラム書いてるみたいな感じ?
っていつの時代や!
世に出回っているプラグインも大半がそんな感じで作られているのも、
そういった本体の設計方針が深く関わっていると思う。
しょうがないので、
開発しながら、WordPressの仕組みを理解しつつ
自分なりのフレームワーク的なものを作り込んでいくしかないのが現状。
開発に無駄に時間かかるなぁ、と思う今日この頃。
いやぁ、でも一説にはWordPressは全世界の4分の1のサイトで採用されているとも言われているので、ビジネスチャンスはめちゃくちゃあるんだよなぁ。
競合も多いけど。