前回と質問の主旨が変わったのでまた質問させていだたきます。
wordpress バージョン4.3.1
wordpressの固定ページで記事一覧を取得したのですが、その時に使うpre_get_postsについて分からないので教えてください。
function.php内には
pre_get_postsで固定ページpage-rank.php内で呼ばれるメインクエリーにフィルターをかけています。
そしてpage-rank.php内でのみ、ループ内で取得するデータを'post'に変えています。
```php
function change_posts_per_page($query){
//管理画面、またはメインクエリーでない場合
if ( is_admin() || ! $query->is_main_query() )
return;
//固定ページrankの場合 if($query->is_page('rank')){ $query->set( 'post_type','post' ); return; }
}
add_action( 'pre_get_posts', 'change_posts_per_page' );
page-rank.php内には 記事一覧を取得するためにthe_content()とthe_title()を呼び出しています。 ```php <?php if(have_posts()) : while(have_posts()) : the_post(); ?> <?php the_title(); the_content(); endwhile; else : ?> <p>取得できる記事がありません。</p> <?php endif; ?>
しかし、実際に動かすとデータも取ることができないどころか、
page-rank.phpへのリンクを踏んだ時だけindex.phpに飛ばされてしまいます。
pre_get_postsを使い、特定の固定ページで投稿記事一覧を取得するにはどこを改善すればよいか教えて下さい。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/10/14 14:38