WordPress wp_list_pages : liste les frères et sœurs de la page parent

Publié par Jean-Michel le

J’essaie de faire fonctionner cela depuis un bon moment maintenant. Je me rapproche mais je ne trouve pas de solution de travail.

Ma structure de page est comme ceci:

1 FIRST LEVEL
  2 SECOND LEVEL
    3 THIRD LEVEL
      4 CAR
         5 SUV
         5 MINIVAN
         5 FULLSIZE
      4 MOTORCYCLE
      4 BICYCLE
  2 SECOND LEVEL
  2 SECOND LEVEL
1 FIRST LEVEL

J’ai besoin d’une instruction wp_list_pages qui fait ce qui suit : sur les pages de 4e et 5e niveaux (et UNIQUEMENT sur celles-ci), la navigation répertorie toutes les pages de 4e niveau.

Lire également:  Wordpress : Modifier l'élément de menu parent pour afficher l'élément de sous-menu au survol au lieu d'un clic

(Quand je suis sur la page « VOITURE », la navigation devrait être VOITURE, MOTO, VÉLO. Et aussi quand je suis sur la page MINIVAN, la navigation devrait être VOITURE, MOTO, VÉLO.)

Merci beaucoup pour toute aide!

Solution n°1 trouvée

Voici le code que j’ai finalement utilisé, grâce à la réponse de TheDeadMedic. (J’ai annulé un niveau de page donc c’est pour le 3ème et le 4ème niveau)

$ancestors = get_post_ancestors($post);
if (count($ancestors) == 2) {
   $parent = $ancestors[0];
}
elseif (count($ancestors) == 3) {
   $parent = $ancestors[1];
}

if ($parent) {
   $tabs = wp_list_pages('depth=1&child_of=' . $parent);
}

Solution n°2 trouvée

$ancestors = get_post_ancestors($post);
if (count($ancestors) >= 3) {
    $parent = $ancestors[2]; // third level page ID
    wp_list_pages('depth=1&child_of=' . $parent);
}

N’hésitez pas à demander si vous n’êtes pas sûr de quoi que ce soit 🙂

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *