目次
実行環境
- wordpress
- php
症状
WordPressの独自関数であるis_page関数を使用して
if ( is_page('test') ) {
//処理内容
}
というように条件分岐をしようとしても、正しく動作しない。
原因1
is_page関数を使用する以前に、have_post関数やquery_post関数を使用していて、かつ、リセット処理を行っていない。
対処法1
is_page関数を使用する前に、wp_reset_query();を実行して、リセット処理を行う。
例:
wp_reset_query();
if ( is_page('test') ) {
//処理内容
}
原因2
同じスラッグ名のページが複数ある。
例:固定ページの/blog/ と カスタム投稿タイプの/blog/
対処法2
重複しているスラッグ名を変更する。