这是示例代码,用作wordpress中的预加载器。
标头.php
<html <?php language_attributes(); ?> <?php brk_root_class();?> <?php brk_skin_attr();?>>
功能.php
/**
* Root Class
*/
function brk_root_class( $classes = array() ) {
if ( get_theme_mod( 'brk_preloader', '1' ) ) {
$classes[] = 'brk-preloader';
}
if ( is_singular( array( 'brs_header', 'brs_footer' ) ) ) {
$classes[] = 'is-single-' . esc_attr( get_post_type() );
}
if ( is_customize_preview() ) {
$classes[] = 'html-is-preview';
}
$classes = implode( ' ', $classes );
echo 'class="' . esc_attr( $classes ) . '"';
}
遵循以下函数中的 if/else 条件
function brk_root_class( $classes = array() ){
if ( get_theme_mod( 'brk_preloader', '1' ) ) {
// start conditon
if(wp_is_mobile()){
// mobile
$classes[] = 'brk-preloader';
}else{
// desktop, for specific page
if(get_the_ID()=='1234'){ // 1234 it's a unique page id. WordPress provide id for pages/posts
$classes[] = 'brk-preloader';
}
}
// end condition
}
if ( is_singular( array( 'brs_header', 'brs_footer' ) ) ) {
$classes[] = 'is-single-' . esc_attr( get_post_type() );
}
if ( is_customize_preview() ) {
$classes[] = 'html-is-preview';
}
$classes = implode( ' ', $classes );
echo 'class="' . esc_attr( $classes ) . '"';
}