LoginSignup
1
1

More than 5 years have passed since last update.

WordPressのクエリにバグ。全投稿が出てしまう。

Last updated at Posted at 2018-05-20

特定の投稿タイプで、where句をカスタマイズしたところ、カスタムフィールドや投稿一覧など(だったはず)に、すべての投稿が表示されてしまった。

コードです。

/**
 * カスタム投稿タイプ、絞込検索でwhere句をカスタマイズ
 */
function custom_search_where($where) {
    if ($_REQUEST['post_type'] !== '*カスタム投稿タイプ名*' || is_admin()) {
//      return; // => バグの原因
        return $where;
    }

    // いろいろ処理

    return $where;
}
add_filter('posts_where', 'custom_search_where');

\$_REQUESTで条件分岐しているのが良くない気もしますが、$whereを返さないことで、画像なども含めて、全てが表示されてしまっていました。

その他、posts_searchposts_joinについても、returnするときは引数を返す必要がありました。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1