Por que o get_posts () retorna um conjunto vazio?

4

Estou escrevendo um plug-in personalizado que é inicializado em init . Este plugin está tentando consultar alguns tipos de post personalizado já armazenados no banco de dados.

Aqui está o meu código:

$args = array()
$myposts = get_posts( $args );  
print_r($myposts);

Não importa quais argumentos eu passe para o array $ args eu não recebo nada. Por exemplo:

$args = array( 'post_type' => 'page' );

Agora, para minha confusão, se eu usar exatamente os mesmos argumentos com get_pages() , obtenho um resultado.

Talvez isso tenha algo a ver com quando o WP Query foi inicializado?

    
por BFTrick 29.01.2013 / 03:38

1 resposta

4

Parece que foi um problema simples. get_posts () tem várias configurações padrão, uma delas é que post_status está definido como public e meu personalizado tipo de postagem que não usa post_status usou o valor padrão, draft .

Para corrigir isso, você pode consultar o status da postagem (consulte o código abaixo) ou alterar os dados no banco de dados.

$args = array(
    'post_status' => 'draft',
    'post_type'   => 'your_custom_post_type'
);
    
por BFTrick 29.01.2013 / 19:58