El siguiente código es para enumerar los tipos de publicación personalizados y sus hijos en la barra lateral. El código funciona muy bien pero no resalta las subpáginas.
En functions.php
:
if(!function_exists('get_post_top_ancestor_id')){
/**
* Gets the id of the topmost ancestor of the current page. Returns the current
* page's id if there is no parent.
*
* @uses object $post
* @return int
*/
function get_post_top_ancestor_id(){
global $post;
if($post->post_parent){
$ancestors = array_reverse(get_post_ancestors($post->ID));
return $ancestors[0];
}
return $post->ID;
}}
y agregando este código a la barra lateral:
<ul>
<?php
$getid=get_post_top_ancestor_id();
#echo $getid;
global $post;
$post=get_post($getid);
setup_postdata($post);
?>
<?php
if (is_single($post->ID)) {$pg_li .="current_page_item";}
else {
$pg_li .="page_item";}
?>
<h3><?php the_title();?></h3>
<p></p>
<li class="<?php echo $pg_li; ?>">
<a href="<?php the_permalink(); ?>">BIOGRAPHY</a>
</li>
<li class="<?php echo $pg_li; ?>">
<?php
$args=array(
'post_type'=>'artists',
'child_of'=>$getid ,
'sort_column'=>'menu_order',
'hierarchical' => 1,
'title_li'=>__('')
);
wp_list_pages( $args );
wp_reset_query();
?></li>
</ul>
No estoy familiarizado con PHP, y un amigo me ayudó a escribir este código. Entonces, ¿qué me falta para resaltar el submenú actual de ese tipo de publicación personalizada?