我有一个名为”
投资组合”
的页面。我使用此页面显示名为”
Works”
的自定义帖子类型的档案。为此, 我使用名为”
工作档案”
的自定义模板显示投资组合页面。
当我在单个Works上时, 我想突出显示菜单中的”
投资组合”
页面。
你能帮助我吗?
#1这可以帮助你
function change_page_menu_classes($menu){
global $post;
if (get_post_type($post) == 'portfolio')
{
$menu = str_replace( 'current_page_parent', '', $menu );
// remove all current_page_parent classes
$menu = str_replace( 'page-item-366', 'page-item-366 current_page_parent', $menu );
// add the current_page_parent class to the page you want
}
return $menu;
}
add_filter( 'wp_page_menu', 'change_page_menu_classes', 0 );
资源
#2嘿, 我不知道这是否仍然有意义, 但是我遇到了这个问题, 并且效果很好。我正在使用发帖主题为” 项目” 的roots主题
// Remove active class from menu
function remove_active_class($class) {
return ( $class == 'active' ) ? FALSE : TRUE;
}// Add active class to menu of post type single template
function add_class_to_wp_nav_menu($classes) {if( is_singular( 'projects' ) ) {$classes = array_filter( $classes, 'remove_active_class' );
if( in_array( 'menu-projects', $classes) ) {
$classes[] = 'active';
}
} elseif( is_singular( 'resources' ) ) {$classes = array_filter( $classes, 'remove_active_class' );
if( in_array( 'menu-resources', $classes) ) {
$classes[] = 'active';
}
}return $classes;
}
add_filter('nav_menu_css_class', 'add_class_to_wp_nav_menu');
#3
add_filter( 'nav_menu_css_class', 'namespace_menu_classes', 10, 2 );
function namespace_menu_classes( $classes , $item ){
if ( get_post_type() == 'attorneys' ) {
$classes = str_replace( 'current_page_parent', '', $classes );
if ( $item->
url == '/attorneys' ) {
// Replace "attorneys" with your code
if(preg_match('/attorneys/', $item->
url)) {
$classes = str_replace( 'menu-item', 'menu-item current_page_parent', $classes );
}
}
return $classes;
}
【自定义帖子类型菜单中的突出显示页面】从此处更改:https://wordpress.org/support/topic/custom-post-type-highlighting-current-menu-item
推荐阅读
- 如何从Post而不是WordPress Meta中获取Yoast Meta()
- ceph flag 设置#yyds干货盘点#
- 仔细查看吗(你能区分真人与机器)
- ceph rados 对象创建以及文件上传与下载#yyds干货盘点#
- samba 配置参数#yyds干货盘点#
- d语言变序打印参数.
- 三二进制高可用
- Flutter 专题50 图解动画小插曲之 Lottie 动画 #yyds干货盘点#
- PassJava 开源(十三) ( Spring Cloud 整合 OSS 对象存储 #私藏项目实操分享#)