워드프레스 잘 아시는 분 계시면... ㅠㅠ
본문
멀티사이트용 테마를 제작중에 있습니다.
여러 블로그를 추가해서, 각각 다른 사용자를 등록할 거예요!
테마 제작중에 각각의 블로그에 클라이언트 스스로 헤더 이미지를 변경할 수 있도록
custom-header를 추가했는데,
이미지는 클라이언트에게 변경하도록 가능하게 되었습니다만,
각각의 블로그마다 헤더이미지의 뒷배경을 다른 색으로 하려고 하거든요.
그러려면 각각의 멀티사이트 블로그아이디를 이용해서
블로그 아이디(1)에는 body에 class="bg1"
블로그 아이디(2)에는 body에 class="bg2"
블로그 아이디(3)에는 body에 class="bg3"
이런 식으로 클래스를 추가하려고 해요.
그러려면 if문으로
<script>
if ( blog_id1 ) {
$( 'body' ).addClass( 'bg1' );
} else if ( blog_id2 ) {
$( 'body' ).addClass( 'bg2' );
} else if ( blog_id3 ) {
$( 'body' ).addClass( 'bg3' );
}
</script>
이런식으로 표현하면 될 것 같은데 ...;;;
질문이 이상한데 하하하...
정확히 혹시 알고 계신 분 계신가 해서... 질문 드립니다 ㅠ
답변 2
블로그 아이디를 구하는 방법
https://codex.wordpress.org/Function_Reference/get_current_blog_id
body_class 를 수정하는 방법
https://codex.wordpress.org/Function_Reference/body_class
위의 두개 결과를 합쳐서 아래 코드를 작성해 보았습니다.
add_filter( 'body_class', 'custom_my_class_names' );
function custom_my_class_names( $classes ) {
$blog_id = get_current_blog_id(); //블로그의 아이디를 구한다.
// add 'class-name' to the $classes array
$classes[] = 'bg'.$blog_id; //body 에 class name 을 추가한다.
// return the $classes array
return $classes;
}
<body class="bg<?if 회원번호;?>">
css로 처리될수 없나요??
<style>
body.bg회원번호 {background:#ddd;}
body.bg회원번호 {background:#ccc;}
</style>
각 회원이 추가될때마다 css를 추가하거나 미리 복사해서 몇백명껄 추가해둬도...-_-'