wordpressのis_singleとかinit時には動きません。

備忘録です。
wordpressのis_singleやis_pageなど、現在の表示する投稿がどのようなタイプなのか判別する関数です。
これ、
add_action( ‘init’, ‘floating_weed_test_init’ );
で、addアクションした関数内では動きません。
例えばis_singleの場合(/wp_includes/query.php)

function is_single( $post = '' ) {
	global $wp_query;
	if ( ! isset( $wp_query ) ) {
		_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1' );
		return false;
	}
	return $wp_query->is_single( $post );
}

となっています。
$wp_queryの中身がなければ動きません。
クエリ概要によると、
initアクション後に、queryに関する処理が働くためです。
以上