こんにちは
株式会社クラスアクト インフラストラクチャ事業部の大塚です。
Wordpressって導入は簡単ですし、ある程度の変更は管理画面で出来ちゃったりしますが、より深くカスタムをしようとすると「どこのファイルをみればいいんじゃーーー!!!」ってなりがちな気がします。
それもそのはず、Wordpressを構成するファイルは数百は間違いなくあり、それらが連携しあってあの便利なCMSサービスが稼働しているわけで。。。
便利は便利で素晴らしいのですが、その反面ブラックボックス部分が多いのは個人的には怖く、ブラックボックスのまま使うのは宜しくないでしょうと
(そういう意味だとDjangoは色々設定を自分で入れ込まないといけないけどCMSの入り口としては良い気がする)
いつまでも苦手意識を持ってるわけにもいかないので、ちょっと一念発起してWordpressのルーティング(ユーザからのアクセスに対してどのように処理をしているのか)を図に落としてみました。
まだ足りていない部分・間違っている部分があるかもですがちょっとずつ更新していければなと・・・
Wordpressのフォルダの構成
後から出てきますがユーザからアクセスがあると"index.php"が呼び出され、その子が"wp-blog-header.php"をコール。
更にそこから"wp-load.php"がコールされたりwp-includesディレクトリやwp-content内のWordpressで使用しているテーマのディレクトリでごちゃごちゃ処理を行う。
処理の結果生成されたHTML/CSSファイルをユーザに返答することでWebサービスを提供しているようです。
図
全ての処理でこれが当てはまるわけではないようですが、ざっくり以下の処理フローの様です。
Wordpressをプラグイン無しで、コードレベルでカスタムしていくときにフロー図があるとブラックボックスではあるものの、どこを修正すべきなのか見えてくる気がします。