Você está procurando uma maneira de descobrir se uma página em seu site WordPress é uma página filha ou não? Embora provavelmente exista um plugin para isso, criamos um trecho de código rápido que você pode usar para verificar se uma página é uma página filha no WordPress.
Instruções:
Tudo o que você precisa fazer é adicionar este código ao arquivo functions.php do seu tema ou a um plugin específico do site:
/*
* Checks if the page is the parent or a child of the page matching the $pid param
* $pid can be the page slug or the page ID #
*
* This function is best used to display menus when the parent/top level menu item needs
* a rollover state or special treatment.
*
* @param $pid (string or int)
* returns true if current page ID matches , else return false
*/
function is_child( $pid ) { // = The ID of the page we're looking for pages underneath
global $post; // load details about this page
// if $pid is an ID
if (is_int($pid)) {
if ( is_page($pid) )
return true;
// get the page's children if the ID of a child matches the return true
$anc = get_post_ancestors( $post->ID );
foreach ( $anc as $ancestor ) {
if( is_page() && $ancestor == $pid ) {
return true;
}
}
}
// if is a page slug
elseif (is_string($pid)) {
// Get page by 'SLUG'
$page = get_page_by_path( $pid );
if ($post->ID == $page->ID) {
return true;
}
$anc = get_post_ancestors( $post->ID );
foreach ( $anc as $ancestor ) {
if( is_page() && == $page->ID ) {
return true;
}
}
}
return false; // we arn't at the page, and the page is not an ancestor
}
/*
Used in a template:
<img src="home<?php if (is_child(0)){?>-ro<?php } ?>.jpg">
or
<img src="home<?php if (is_child('home')){?>-ro<?php } ?>.jpg">
if true equals
<img src="home-ro.jpg">
*/
Observação: Se esta é a sua primeira vez adicionando snippets de código no WordPress, consulte nosso guia sobre como adicionar snippets de código corretamente no WordPress, para não quebrar acidentalmente seu site.
Se você gostou deste trecho de código, considere conferir nossos outros artigos no site, como: 7 melhores plugins de enquete do WordPress para aumentar o engajamento no local e como configurar o rastreamento de downloads no WordPress com o Google Analytics.
Olá, há um erro de sintaxe na linha #39