워드프레스 잘 아시는 분 계시면... ㅠㅠ 채택완료
멀티사이트용 테마를 제작중에 있습니다.
여러 블로그를 추가해서, 각각 다른 사용자를 등록할 거예요!
테마 제작중에 각각의 블로그에 클라이언트 스스로 헤더 이미지를 변경할 수 있도록
custom-header를 추가했는데,
이미지는 클라이언트에게 변경하도록 가능하게 되었습니다만,
각각의 블로그마다 헤더이미지의 뒷배경을 다른 색으로 하려고 하거든요.
그러려면 각각의 멀티사이트 블로그아이디를 이용해서
블로그 아이디(1)에는 body에 class="bg1"
블로그 아이디(2)에는 body에 class="bg2"
블로그 아이디(3)에는 body에 class="bg3"
이런 식으로 클래스를 추가하려고 해요.
그러려면 if문으로
</span></p><p><span style="font-family: 나눔고딕, NanumGothic;"><script></span></p><p><span style="font-family: 나눔고딕, NanumGothic;">if ( blog_id1 ) {</span></p><p><span style="font-family: 나눔고딕, NanumGothic;"> $( 'body' ).addClass( 'bg1' );</span></p><p><span style="font-family: 나눔고딕, NanumGothic;">} else if ( blog_id2 ) {</span></p><p><span style="font-family: 나눔고딕, NanumGothic;"> $( 'body' ).addClass( 'bg2' );</span></p><p><span style="font-family: 나눔고딕, NanumGothic;">} else if ( blog_id3 ) {</span></p><p><span style="font-family: 나눔고딕, NanumGothic;"> $( 'body' ).addClass( 'bg3' );</span></p><p><span style="font-family: 나눔고딕, NanumGothic;">}</span></p><p><span style="font-family: 나눔고딕, NanumGothic;"></script></span></p><p><span style="font-family: 나눔고딕, NanumGothic;">
이런식으로 표현하면 될 것 같은데 ...;;;
질문이 이상한데 하하하...
정확히 혹시 알고 계신 분 계신가 해서... 질문 드립니다 ㅠ
답변 2개
블로그 아이디를 구하는 방법
https://codex.wordpress.org/Function_Reference/get_current_blog_id">https://codex.wordpress.org/Function_Reference/get_current_blog_id
body_class 를 수정하는 방법
https://codex.wordpress.org/Function_Reference/body_class">https://codex.wordpress.org/Function_Reference/body_class
위의 두개 결과를 합쳐서 아래 코드를 작성해 보았습니다.
</p><p>add_filter( 'body_class', 'custom_my_class_names' );</p><p>function custom_my_class_names( $classes ) {</p><p> </p><p> $blog_id = get_current_blog_id(); //블로그의 아이디를 구한다.</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>// add 'class-name' to the $classes array</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$classes[] = 'bg'.$blog_id; //body 에 class name 을 추가한다.</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>// return the $classes array</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>return $classes;</p><p>}</p><p>
답변에 대한 댓글 7개
functions.php 에 넣으셔도 되실겁니다.
body에 <?php body_class(); ?> 이걸 넣었어야 했군요!
그런데-_ - 필요 없는 클래스명까지 같이 나와버리네요 허얼...
[code]
add_action('wp_footer', 'custom_add_footer_script' , 39 );
function custom_add_footer_script(){
$blog_id = get_current_blog_id(); //블로그의 아이디를 구한다.
?>
<script type="text/javascript">
<!--
jQuery(document).ready(function($) {
var add_body_class = "bg<?php echo $blog_id; ?>";
$('body').addClass(add_body_class);
});
//-->
</script>
<?php
}
[/code]
ㅡ,. ㅡ 하하 ㅠ ㅠ
functions.php
아무래도 쓸데없는 클래스가 너무 많이 붙고,
원래 사용하던 클래스와 겹치거나 하는게 신경 쓰이네요 ㅠ
body_class에 출력되는 클래스를 제어하는 방법..은 없겠죠? ㅠ
찾아볼게요!
댓글을 작성하려면 로그인이 필요합니다.
<body class="bg<?if 회원번호;?>">
css로 처리될수 없나요??
<style>
body.bg회원번호 {background:#ddd;}
body.bg회원번호 {background:#ccc;}
</style>
각 회원이 추가될때마다 css를 추가하거나 미리 복사해서 몇백명껄 추가해둬도...-_-'
답변에 대한 댓글 3개
일단 블로그 이용자는 그렇게 많진 않구용~
<body class="bg<?if 회원번호;?>"> 말씀하신 이 부분은
회원번호 <ㅡ 이 부분은 지정을 하라는 말씀이신가요?
잘 이해가 안가서요 ㅠ ㅠ
조건문을 써서,
테마 헤더에
블로그아이디가 blog_1인 경우에는 <body>에 클래스 bg1을
블로그아이디가 blog_2인 경우에는 <body>에 클래스 bg2을... 붙이도록 하고 싶은데
제가 ... 코드를 쓸 줄 몰라서요 ㅠ
물론 각각의 class에 다른 배경을 지정하고요...
<body class="bg<?php echo member[mb_id];?>">
회원번호가 클래스가 되지 않나 해서 남겨드렸어요~
<body class="bg <?php echo member[mb_id];?>">
차라리 위처럼 bg클래스는 동일하되 띄워줌으로써 중복클래스로
<style>
.bg .1 {background:#ddd;}
</style>
이렇게하는것도 괜찮을듯해서..
그런 방법이 있는지 구글링 좀 해보겠습니다^^
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
알려주신 코드를 function에 넣으면 되는걸까용?-ㅅ -;; ㅎㅎ