Consulta WP para obter páginas filho da página atual
-
-
Experimenteesta solução ==. Obter crianças de umpost - http://wordpress.stackexchange.com/a/123143/42702Try this solution == get children of a post - http://wordpress.stackexchange.com/a/123143/42702
- 0
- 2013-11-13
- T.Todua
-
3 respostas
- votos
-
- 2012-07-31
Vocêprecisa alterar
Child_OF
paraPost_Parent
e também adicionarpost_type=> 'Página' : wordpress codex wp_query Post & Amp; Parâmetros dapágina
& lt;?php $ args=array ( 'post_type'=> 'página', 'posts_per_page'=> -1, 'post_parent'=> $post-e gt;id, 'ordem'=> 'ASC', 'Orderby'=> 'menu_order' ); $pai=novo WP_Query ($ args); se ($pai- >them_posts ()):? > & lt;?php while ($pai-e gt;them_posts ()): $pai- >the_post ();? > & lt; divid="pai- & lt;phpthe_id ();? >" classe="pai-página" > & lt; h1 > & lt; a href="& lt;phpthe_permalink ();? >"title="& lt;?phpthe_title ();" > "& lt;"phpthe_title ();? > & lt;/a > & lt;/h1 > & lt;p > & lt;phpthe_advanced_excert ();? > & lt;/p > & lt;/div > & lt;? Php Endwile;? > & lt;?phpendif; WP_RESET_POSTDATA ();? >
You have to change
child_of
topost_parent
and also addpost_type => 'page'
:WordPress codex Wp_query Post & Page Parameters
<?php $args = array( 'post_type' => 'page', 'posts_per_page' => -1, 'post_parent' => $post->ID, 'order' => 'ASC', 'orderby' => 'menu_order' ); $parent = new WP_Query( $args ); if ( $parent->have_posts() ) : ?> <?php while ( $parent->have_posts() ) : $parent->the_post(); ?> <div id="parent-<?php the_ID(); ?>" class="parent-page"> <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1> <p><?php the_advanced_excerpt(); ?></p> </div> <?php endwhile; ?> <?php endif; wp_reset_postdata(); ?>
-
Obrigado cara,eutentei "post_parent" original,mas é "post_type"=> ''page'` que é a chave - o wordpress consultapadrãoparapostarentão?Eu vou aceitar a resposta quandoissome permite.Thanks dude, I tried `post_parent` original but it's `'post_type' => 'page'` that is the key - does wordpress querys default to post then? I will accept answer when it lets me.
- 1
- 2012-07-31
- Joshc
-
Sim,'Post_Type'=> 'Post'`' épadrão.Yes, `'post_type' => 'post'` is default.
- 0
- 2019-03-26
- mrwweb
-
- 2020-02-26
Eu sei queesta é umaperguntamuito antiga,mas desde queeupousei,outrostambémpoderiam.
WordPresstem uma soluçãomuito simplespara listarpáginas,onde vocêpode adicionar alguns argumentostambém.
Isso étudo que vocêprecisaráexibirfilhos de umapágina:
wp_list_pages(array( 'child_of' => $post->ID, 'title_li' => '' ))
Olhepara o Página de referênciapara wp_list_pages paratodas as opções que vocêpode aplicar.
I know this is a very old question, but since I landed on it, others might as well.
Wordpress has a very simple solution for listing pages, where you can add some arguments as well.
This is all you will need to display a page's children:
wp_list_pages(array( 'child_of' => $post->ID, 'title_li' => '' ))
Look at the reference page for wp_list_pages for all options you can apply.
-
Isso retornará uma string HTMLem vez de uma lista de objetospostais,entãoprovavelmentenão o que o op deseja.This will return an HTML string rather than a list of post objects, so probably not what the OP wants.
- 0
- 2020-07-27
- Alexander Holsgrove
-
- 2020-02-05
Reescrevendoissopara umafunçãoem funções.php vocêprecisa adicionar Postagemglobal de $;
function page_summary() { global $post; $args = array( 'post_type' => 'page', 'posts_per_page' => -1, 'post_parent' => $post->ID, 'order' => 'ASC', 'orderby' => 'menu_order' ); $parent = new WP_Query( $args ); if ( $parent->have_posts() ) : while ( $parent->have_posts() ) : $parent->the_post(); ?> <div id="parent-<?php the_ID(); ?>" class="parent-page"> <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1> </div> <?php endwhile; endif; wp_reset_postdata(); }
Rewriting this to a function in functions.php you need to add global $post;
function page_summary() { global $post; $args = array( 'post_type' => 'page', 'posts_per_page' => -1, 'post_parent' => $post->ID, 'order' => 'ASC', 'orderby' => 'menu_order' ); $parent = new WP_Query( $args ); if ( $parent->have_posts() ) : while ( $parent->have_posts() ) : $parent->the_post(); ?> <div id="parent-<?php the_ID(); ?>" class="parent-page"> <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1> </div> <?php endwhile; endif; wp_reset_postdata(); }
Alguémpodeporfavorme ajudar com o WP_Query.
Euestoufazendo um arquivo/loop demodelopara criare arquivar apágina daspáginas de crianças dapágina atual.
Esta consultaprecisa ser automática,poisestou usandoem algumaspáginas.
Esta é aminha consulta abaixo,mas apenas retornameuspostsem vez depáginasfilho.
Agradecemos antecipadamentepor qualquer ajuda.
josh