Obtendo apenas páginas filho diretas no WordPress com get_pages

16

Estou tentando buscar todos os filhos diretos de uma página. Mas também estou recebendo todos os filhos e netos. Alguma idéia?

PHP Source:

$args = array( 
        'child_of' => $post->ID, 
        'parent ' => $post->ID,
        'hierarchical' => 0,
        'sort_column' => 'menu_order', 
        'sort_order' => 'asc'
);
$mypages = get_pages( $args );

foreach( $mypages as $post )
{

$post_tempalte = the_page_template_part();

get_template_part( 'content' , $post_tempalte );
}

Meu $args deve estar correto de acordo com a documentação , mas está ignorando totalmente parent e hierarchical .

A estrutura da minha página é a seguinte:

  

Pais
  -Child 1
  -Child 2
  -Criança 1 para criança 2
  - criança de 2 a 2 filhos
  -Criança 3

E eu só quero obter child 1 , child 2 e child 3 .

    
por jamietelin 27.11.2012 / 13:12

2 respostas

10

Por favor, verifique o parâmetro 'pai'. Parece que há um espaço depois do nome.

    
por realloc 27.11.2012 / 14:05
2

Com o parâmetro 'depth' da função "wp_list_pages" ou "get_pages", podemos definir quantos níveis queremos recuperar. Então, aqui, vou exibir todo o primeiro nível filho da página atual.

            <?php global $post;
                    wp_list_pages( array(
                    'child_of' => $post->ID, // Only pages that are children of the current page
                    'depth' => 1 ,   // Only show one level of hierarchy
                    'sort_order' => 'asc'
                ));
            ?>
    
por Romain 22.07.2013 / 13:01