WordPress. Una funzione per controllare la pagina madre

Questa funzione è utile per controllare se la pagina corrente ha una certa pagina madre. E’ sufficiente passare alla funzione un parametro, che può essere sia l’abbreviazione della pagina, oppure l’ID numerico.

function is_subpage( $iID = null ){
	global $post, $wpdb;
	if ( is_page() AND isset( $post->post_parent ) != 0 ){
		$aParent = $wpdb->get_row( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE ID = %d AND post_type = 'page' LIMIT 1", $post->post_parent ) );
		if ( is_int( $iID ) > 0 )
			if ( $aParent->ID == $iID ) return true; else return false;
		else
			if ( $aParent->ID )	return true; else return false;
	} else {
		return false;
	}
}

/* 
Esempio: controlla se la pagina corrente è una 
sottopagina di 'prodotti' o della pagina che ha id = 8 
*/

if ( is_page('prodotti') OR is_subpage( 8 ) ){
  // fai qualcosa
};

Articolo originale: WordPress Check Page Parent custom function