Vous cherchez un moyen d’obtenir le parent absolu d’une page enfant ? Bien qu’il existe probablement un plugin pour cela, nous avons créé un extrait de code rapide que vous pouvez utiliser pour obtenir le parent absolu de n’importe quelle page enfant dans WordPress.
Obtenir le parent absolu de n’importe quelle page enfant, quelle que soit la profondeur de la page enfant dans l’arbre de navigation. C’est très utile pour la navigation à plus de deux niveaux de profondeur.
Dans l’exemple ci-dessous, lorsque l’utilisateur se trouve sur une page enfant de “Our Company” (qui a un ID de 2), une classe est attribuée à l’élément liste :
<ul class="nav"> <!-- Nav principal --> <li<?php if(is_tree("2")) echo ' class="active"' ; >><a href="<?php bloginfo( 'url' ) ; ?>/notre-entreprise" title="Notre entreprise">Notre entreprise</a></li> </ul>
Instructions:
Il vous suffit d’ajouter ce code dans le fichier functions.php de votre thème ou dans un plugin spécifique à votre site:
function is_tree($pid) { // $pid = The ID of the page we're looking for pages underneath global $post; // load details about this page if ( is_page($pid) ) return true; // we're at the page or at a sub page $anc = get_post_ancestors( $post->ID ); foreach ( $anc as $ancestor ) { if( is_page() && $ancestor == $pid ) { return true; } } return false; // we aren't at the page, and the page is not an ancestor }
Note : Si c’est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez vous référer à notre guide sur comment copier/coller correctement des extraits de code dans WordPress, afin de ne pas casser accidentellement votre site.
Si vous avez aimé cet extrait de code, n’hésitez pas à consulter nos autres articles sur le site comme : 23 meilleurs thèmes WordPress pour les organisations à but non lucratif et comment suivre les liens d’affiliation dans Google Analytics.
Commentaires laisser une réponse