J'essaie de récupérer tous les enfants directs d'une page. Mais je reçois aussi tous les enfants et petits-enfants. Des idées?
Source PHP:
$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 );
}
Mon $args
devrait être correct selon la documentation , mais c'est totalement ignorer parent
et hierarchical
.
Ma structure de page est la suivante:
Parent
-Enfant 1
-Enfant 2
--Enfant 1 à enfant 2
--Enfant 2 à enfant 2
-Enfant 3
Et je veux seulement obtenir child 1
, child 2
et child 3
.
php
loop
pages
page-template
jamietelin
la source
la source
depth
option. une autre solution que j'ai trouvée et qui semble fonctionner est$mypages = get_pages('child_of='.$post->ID.'&sort_column=post_date&sort_order=desc&parent='.$post->ID);
ici que vous pouvez changersort_column
etsort_order
selon vos besoins.depth
ne m'a pas aidé du tout, à réglerchild_of
etparent
à la même chose.Réponses:
Veuillez vérifier le paramètre «parent». Il semble qu'il y ait un espace après le nom.
la source
Avec le paramètre 'depth' de la fonction "wp_list_pages" ou la fonction "get_pages", nous pouvons définir le nombre de niveaux que nous voulons récupérer. Alors ici, je vais afficher tout le premier niveau enfant de la page actuelle.
la source