Consulta personalizada: o parâmetro post__in faz com que a consulta esteja vazia

Eu criei uma configuração de customizador onde é possível escolher uma lista de páginas. Esta lista de páginas será mostrada com um estilo diferente, apenas em páginas usando um modelo específico, juntamente com mais conteúdo.

Fazendo print_r nesta configuração mostra uma matriz deste tipo:

 Array ( [0] => Array ( [page] => 701 ) [1] => Array ( [page] => 156 ) [2] => Array ( [page] => 1133 ) ) 

Então, eu estou usando um loop foreach para convertê-lo em uma forma adequada para post__in , para adicionar como arg para um WP_Query .

 foreach ($services as $service) { $id = $service['page']; $id_list [] = $id; } 

onde $ services é obtido por get_theme_mod e contém os ids de página corretos.

Então, eu estou passando para WP_Query dessa maneira:

 $args = array( 'post__in' => $id_list, 'ignore_sticky_posts' => true ); $q = new WP_Query($args); 

Mas a consulta não está retornando nenhuma página, apesar do fato de que todas as ID estão corretas. Como complemento, posso dizer que essa consulta está sendo executada na página inicial, e há uma consulta padrão executada depois disso; wp_reset_postdata é chamado.

Como eu tentei também para hardcode minha matriz e o resultado é o mesmo, o que há de errado? Obrigado.

Solutions Collecting From Web of "Consulta personalizada: o parâmetro post__in faz com que a consulta esteja vazia"