query wp per ottenere le pagine figlie della pagina corrente
-
-
Prova questa soluzione == ottienifigli di unpost - 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 risposta
- voti
-
- 2012-07-31
Devi cambiare
child_of
inpost_parent
e aggiungere anchepost_type => 'page'
:Codex WordPress Wp_query Post & amp; Parametri dellapagina
<?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(); ?>
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(); ?>
-
Grazie amico,hoprovato l'originale `post_parent`ma è` 'post_type'=> 'page'` che è la chiave - le query wordpress sonopredefiniteperpostare allora?Accetterò la risposta quandome lopermetterà.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
-
Sì,`'post_type'=> 'post'` è l'impostazionepredefinita.Yes, `'post_type' => 'post'` is default.
- 0
- 2019-03-26
- mrwweb
-
- 2020-02-26
So che questa è una domandamolto vecchia,ma da quando ci sono arrivato,potrebberofarlo anche altre.
Wordpress ha una soluzionemolto sempliceperelencare lepagine,dovepuoi anche aggiungere alcuni argomenti.
Questo ètutto ciò di cui haibisognoper visualizzarei figli di unapagina:
wp_list_pages(array( 'child_of' => $post->ID, 'title_li' => '' ))
Guarda la pagina di riferimentoper wp_list_pages pertutte le opzioni chepuoi applicare.
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.
-
Questo restituirà una stringa HTMLpiuttosto che unelenco di oggettipost,quindiprobabilmentenon è quello che vuole l'OP.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
Riscrivendoloin unafunzionein functions.php ènecessario aggiungere 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(); }
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(); }
Qualcunopuò aiutarmi con wp_query.
Sto creando unfile/loopmodelloper crearee archiviare lapagina dellepagine secondarie dellapagina corrente.
Questa query deveessere automaticapoiché la sto utilizzandoin pochepagine.
Questa è lamia query di seguito,ma restituisce soloi mieipost anziché lepaginefiglie.
Graziein anticipoper qualsiasi aiuto.
Josh