global $gRequestManager;
global $gPageManager;
global $paged;
-
+
// ##### URLパラメータを解析 #####
$this->query_vars = array();
// ページ番号
* @param string $query URL query string.
* @return array List of posts.
*/
- public function query( $query ) {
- // このメソッドはリクエストに対し1回だけ実行
+ public function query($query = '') {
+ // ##### テンプレート起動前にwp()から$queryなしでグローバルで一度実行される。その後、テンプレート内で$query付きで任意に生成、実行される。#####
// $this->init();
// $this->query = $this->query_vars = wp_parse_args( $query );
return $this->get_posts();
* @param string|array $query URL query string or array of vars.
*/
public function __construct( $query = '' ) {
- // $queryが空のパターンはquery()を呼び出して実行
-// if ( ! empty( $query ) ) {
-// $this->query( $query );
-// }
+ // ##### テンプレート起動前にwp()から$queryなしでグローバルで一度実行される。その後、テンプレート内で$query付きで任意に生成、実行される。#####
+ if ( ! empty( $query ) ) {
+ $this->query( $query );
+ }
}
/**
public function query_posts() {
global $wp_the_query;
// $this->build_query_string();
- $wp_the_query->query($this->query_vars);
+// $wp_the_query->query($this->query_vars);
+ $wp_the_query->query(); // テンプレート起動前にwp()から一度だけ実行
}
/**
* @param string|array $query_vars Default WP_Query arguments.
*/
function wp( $query_vars = '' ) {
- global $wp, $wp_query, $wp_the_query;
- $wp->main( $query_vars );
+ global $wp;
+ $wp->main();
+// global $wp, $wp_query, $wp_the_query;
+// $wp->main( $query_vars );
+//
// if ( !isset($wp_the_query) )
// $wp_the_query = $wp_query;
}