私はあなたが実際にPHPの問題を抱えていると思います。 array($results_separated)を実行する場合 基本的に、次のような文字列から配列を作成しています:"12,114,56," 。そうすることで、PHPは次のような配列を作成しています:
array(
0 => "12,114,56,"
)
そして明らかにWordPressはそのようなIDを持つ投稿を見つけることができません!必要なのは、実際には次のような配列です:
array(
0 => "12",
1 => "114",
2 => "56"
)
そして実際にはそれがget_col() が返されるので、$resultsを渡すだけです。 set()へ 機能:
$query->set ( 'post__in', $results );
編集 :実際、問題は$wpdb->get_col(...)を呼び出すときに発生することに気付きました。 、$queryに干渉しているため 後で実行します...これらの変数は、おそらくオーバーライドされる他のグローバル変数を使用しているため、結果が得られません...