WordPress 徹底解剖! 【基本構成ファイルまとめ】
サイト構築に便利なWordPress
WordPressは、テンプレートとプラグインをインストールすることで、デザインと機能を簡単にカスタマイズできます。
実際にWordPressを利用している私も、その便利さは、日々驚きの連続です。
しかしながら、WordPressを利用していると、
「なかなか望みどおりのプラグインが見つからない・・」
「この表示のデザインを変えたいんだけど・・!」
そんな思いをすることもあるわけです。
テンプレートやプラグイン、管理画面でも思い通りの機能が実装できない場合、自分でWordPressのPHPファイルをいじらなければなりません。
けれども、WordPressのソースファイルを直接いじったことがない、という人は意外と多いのではないでしょうか。
WordPressってどういうファイル構成でできているのかがわかっていると、そんなときの一助になるのではないかと思います。
というわけで今回は、WordPressを構成している基本6ファイルをご紹介したいと思います。ざっくり簡単にですが・・。
WordPressの基本ファイルを押さえる
では早速始めましょう。
1.index.php
サイトの入り口となるファイルです。
WordPressのサイト(フロントサイド)は、全リクエストをindex.phpで受取り、リクエストに応じて各PHPの処理を実行していきます。
ですので、やっていることは
define('WP_USE_THEMES', true);
定数WP_USE_THEMESを定義し、
require('./wp-blog-header.php');
wp-blog-header.phpを読み込んでいるだけなのです。
ソースを見れば一目瞭然ですね。
2.wp-blog-header.php
index.phpに読み込まれたwp-blog-header.phpは、大きく以下の3つの処理を実行しています。
wp-load.phpの読み込み。
require_once( dirname(__FILE__) . '/wp-load.php' );
wp関数の実行。
wp();
template-loader.phpの読み込み。
require_once( ABSPATH . WPINC . '/template-loader.php' );
です。
※ここで、wp関数について説明しておきましょう。
突然実行しているwp関数ですが、一体どこで定義されているのでしょうか。
これはwp-load.phpが読みこんでいるload.phpがさらに読みこんでいるfunctions.phpに記述されている関数になります。
処理としては、リクエストに応じてデータベースに登録されている投稿情報の取得をしています。
ここで取得されたデータが、この後読みこんでいるtemplate-loader.phpが指定するテンプレートに応じて表示されます。
3.wp-load.php
上述のload.phpの読み込みに加え、
wp-config.phpを読み込んでいます。
4.wp-config.php
データベースの接続情報、マルチドメインの有無、認証用ユニークキー、言語などを定義しています。
wp-settings.phpを読み込んでいます。
5.wp-settings.php
データベースへの接続をしています。
wp-includesディレクトリの中のファイルをごそっと読み込んでいます。これによりWordPressの関数群が利用できるようになります。
有効になっているプラグインファイルを読み込んでいます。これによりプラグインの機能が利用できます。
6.template-loader.php
選択しているテーマのテンプレートの読み込みを行います。
また、リクエストに応じてどのテンプレートを読み込むかの切り分けを行います。
以上、簡単ですが基本構成ファイルを6つまとめてみました。
このあとのテンプレートの方(こちらの方が編集される機会は多いと思いますが・・)については、
別途まとめたいと思います。
WEBアプリケーション関連 人気連載リンク
基礎からPHPWEBアプリ解発を学ぶなら・・
PHP基礎 連載
より実践的なWEBアプリ開発講座!Bootstrap活用を学ぶなら・・
魁!小野の塾 連載