ワードプレスが動くとき、どんなphpが動いているか2:wp-blog-header.php

前回、ワードプレスが動くとき、どんなphpが動いているか1:ルートのindex.phpで、requireされたwp-blog-header.phpについて。

/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */


if ( !isset($wp_did_header) ) { //変数$wp_did_headerに何もなければ

	$wp_did_header = true; //*1

	require_once( dirname(__FILE__) . '/wp-load.php' ); //*2

	wp(); //*3

	require_once( ABSPATH . WPINC . '/template-loader.php' ); //*4

}

*1の

$wp_did_header = true;

あんまり意味ない。あとで、wordpressフォルダを検索すると、theme.phpというファイルの中で、これがtrueじゃないといけない何かがあるみたい。

*2の

require_once( dirname(__FILE__) . '/wp-load.php' );

でwp-load.phpを呼び出し。
dirname(__FILE__)は、今いるディレクトリの名前のこと。

*3の

wp();

は、function.phpで定義されている。
関数リファレンス/WP Queryで使われる、&wp_queryに関係しているみたい。DBからいろんな条件で情報を引き出してくる何らかへのゴーサイン?

*4で、template-loader.phpの呼び出し。前回の最後参照。

このファイルの役割

スタート地点。

WordPressが動くための関数、pluginの読み込みをさせるwp-load.phpと、
投稿なのかページなのかによりsingle.phpなど適切なファイルを読み込ませるtemplate-loader.phpを、
それぞれ読み込んでいる。

これがあるから全てが動く感じ。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!

著者について

コメント

コメント一覧 (2件)

  • wp-settings.phpの内部でクラスをNEWしています。
          $GLOBALS[‘wp’] = new WP();

  • 私はVC++へワードプレスのプロジェクトを組み入れて全体を調査し始めました、この言語(php)は非常にVC++とC言語に近く非常に理解しやすいですが今はまだ全然理解不能です(矛盾していますが、笑い)、かなりの可能性があると私は思っています。

    何でも出来そうに思いますがこのワードプレス内でコードを編集したくは有りません、私的には関数的な処理が出来ると思い期待しているんですが。

コメントする

目次
閉じる