balise de sous-page wordpress
Je suis en train de construire un thème wordpress en ce moment et j’utilise des conditionnels dans la barre latérale pour afficher différentes informations pour chaque page comme ceci :
if (is_page('services')) {
etc.....
} elseif (etc....
Cependant, certaines des sous-pages n’ont pas leur propre conditionnel spécifique. Comment puis-je faire en sorte qu’une condition pour une page parent s’applique également à ses sous-pages ?
Merci!
Solution n°1 trouvée
Vous pouvez également mettre cet extrait de code dans votre fichier functions.php et l’utiliser n’importe où sur votre code wp.
function is_subpage() {
global $post; // load details about this page
if ( is_page() && $post->post_parent ) { // test to see if the page has a parent
$parentID = $post->post_parent; // the ID of the parent is this
return $parentID; // return the ID
} else { // there is no parent so...
return false; // ...the answer to the question is false
};
};
Source : http://codex.wordpress.org/Conditional_Tags
Solution n°2 trouvée
Vous pouvez le faire de plusieurs façons. Il existe peut-être un moyen plus simple, mais voici ce que je ferais : sur la page elle-même, vérifiez s’il s’agit d’une page enfant :
if ( is_page() && $post->post_parent )
{
// This is a subpage
return true;
}
else
{
// This is not a subpage
return false;
}
qui vérifiera si la page est un enfant, auquel cas vous pouvez récupérer la condition du parent de la même manière que vous le faites actuellement, sauf que vous spécifiez le parent au lieu de la page actuelle lors de la vérification.
0 commentaire