Como consultar uma página, obter dados, consultar as páginas secundárias dessa página

Basicamente, eu quero consultar o PARENT para um monte de dados de campo personalizados e fazê-lo ecoar. Então, eu quero consultar todas as páginas CHILD desse pai e ecoar mais dados.

Qual é a melhor maneira de fazê-lo?

  1. Consulta de nível superior para o pai, então, dentro dessa consulta, um subnível uma consulta para as crianças.
  2. 2 consultas de nível superior separadas
  3. De outros?

Melhor usar wp_query ou get_posts ou combinação de ambos?

UPDATE: Parece que talvez eu precise explicar um pouco melhor.

Se a estrutura das páginas se parece com isto:

 Page Parent ID(2) 1. Child 1 ID(3) 2. Child 2 ID(4) 3. Child 3 ID(5) 4. Child 4 ID(6) 

E a consulta pai parece assim:

 $parent = new wp_query(post_id=2) while //do page parent stuff, eg get the_title(); of the parent page endwhile 

Tenho que executar outra instância de wp_query para obter as páginas post_parent=2 , usando o post_parent=2 , ou posso de alguma forma reutilizar a consulta pai original e estendê-la com parâmetros extras para reduzir as chamadas de consulta?

Estou procurando a otimização do wp_query aqui quando uma consulta filho usa os mesmos parâmetros que o pai mais um par mais. Obrigado.

Solutions Collecting From Web of "Como consultar uma página, obter dados, consultar as páginas secundárias dessa página"

Eu não entendo a distinção que você faz entre a consulta de “sub-nível” e a consulta “toplevel”, mas é assim que eu coloco crianças para uma página.

 $children = get_children( array( 'post_parent' => $servid, 'post_type' => 'page', 'post_status' => 'publish', 'orderby' => 'menu_order', 'order' => 'ASC' )); ?> 

Ou…

 $page_children = get_pages( array( 'child_of' => $post->ID, 'post_type' => 'page', 'sort_column' => 'menu_order', 'order' => 'ASC' )); 

Em ambos os casos, envio o ID do post pai como o primeiro parâmetro.

http://codex.wordpress.org/Function_Reference/get_children

http://codex.wordpress.org/Function_Reference/get_pages

Aqui está um exemplo usando categorias em vez de páginas, mas você pode consultar as informações usando as informações do pai no outro loop:

 // checking current taxonomy to see if it has child categories if it doesn't then we're out of sub categories and should show the current categories products $args = array( 'type' => $taxfunc_post_type, 'hide_empty' => 1, 'orderby' => 'name', 'order' => 'ASC', 'taxonomy' => $taxfunc_tax_name ); $categories = get_categories($args); $categories = wp_list_filter($categories,array('parent'=> $term_id)); foreach($categories as $category) { // setup the cateogory ID $cat_id = $category->term_id; // Get category name $cat_name = $category->name; // Get category count $cat_count = $category->count; //get the category url $cat_url = get_term_link( $category->slug, $taxfunc_tax_name ); echo '
'; echo '
'; echo "

"; echo $cat_name; echo "

"; if ($cat_count > 0) { echo ''; printf( _n('1 profile', '%s profiles', $cat_count,'mouldings' ),$cat_count ); echo ''; } $subcat_args = array( 'type' => $taxfunc_post_type, 'hide_empty' => 1, 'orderby' => 'name', 'child_of' => $cat_id, 'order' => 'ASC', 'taxonomy' => $taxfunc_tax_name, 'pad_counts' => 1 ); $subcategories = get_categories($subcat_args); $subcat_count = count($subcategories); if ($subcat_count > 0) { echo ' '; printf( _n('1 subcategory', '%s subcategories', $subcat_count,'mouldings' ),$subcat_count ); echo ''; } echo ' '.__('View all','mouldings').''; echo '
'; echo '
'; }

No acima, eu child_of parâmetro child_of para a categoria pai. Deixe-me saber se isso ajuda.