开发WordPress主题的时候给body添加额外class

WordPress是自带body_class这个函数,可以快捷的给body添加内置的class名,在开发WordPress主题的时候给body添加额外class的情况,就不能直接通过body_class这个函数来直接添加了。

开发WordPress主题的时候给body添加额外class (https://www.wpzt.net/) WordPress教程 第1张

其实我们可以通过add_filter来给body_class挂载一些内容:

/*body添加class*/

function wd_cus***_body_class($classes){

if(is_home() &**p;&**p; emptyempty(wd_get_slider_background())){

array_push($classes, “top-bar-visible”);

}

if(is_page() || is_single()){

global $post;

if(get_post_meta($post->ID, ‘postheader’, true) == “0” || get_post_meta($post->ID, ‘postheader’, true)== “”){

array_push($classes, “top-bar-visible”);

}

if(get_post_meta($post->ID, ‘pagelayout’, true) == “0”){

array_push($classes, “page-layout-right-sidebar”);

}

if(get_post_meta($post->ID, ‘pagelayout’, true) == “1”){

array_push($classes, “page-layout-left-sidebar”);

}

if(get_post_meta($post->ID, ‘pagelayout’, true) == “2”){

array_push($classes, “page-layout-full-width”);

}

if(get_post_meta($post->ID, ‘pagelayout’, true) == “”){

if(av(‘layout_sidebar’,’0′) == ‘1’){

array_push($classes, “page-layout-left-sidebar”);

}else{

array_push($classes, “page-layout-right-sidebar”);

}

}

}

if(is_home()){

if(av(‘layout_sidebar’,’0′) == ‘1’){

array_push($classes, “page-layout-left-sidebar”);

}else{

array_push($classes, “page-layout-right-sidebar”);

}

}

return $classes;

}

add_filter(‘body_class’, ‘wd_cus***_body_class’);

从案例中,可以看到核心代码

array_push()

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容