시즌별로 홈페이지 로고(css파일로) 자동바꾸기 > 그누4 스킨

그누4 스킨

스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다.
스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y
그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.

시즌별로 홈페이지 로고(css파일로) 자동바꾸기 정보

달력 시즌별로 홈페이지 로고(css파일로) 자동바꾸기

첨부파일

season_logo_utf8.zip (5.9K) 245회 다운로드 2012-01-12 23:09:17
season_logo_euckr.zip (5.8K) 94회 다운로드 2012-01-11 14:40:02

본문

활용팁에 설명만 올렸다가 파일 정리해서 이곳에 올려봅니다.

포털사이트 등에서는 시즌별로 어떻게 로고 이미지, 배경 등을 바꾸는지 궁금하더군요.
크리스마스때 좀 끙끙거리며 머리굴려보니 로고 이미지를 바꾸는 것 보다는 배경까지 바꾸고 하려면 css파일을 바꾸는게 나을 듯 싶어 한번 만들어봤습니다.
마구마구 배우고 있는 초보수준이니 많이 부족하더라도 이해해 주셨음 합니다.

음력계산 부분 스크립트는 포털사이트 검색에서 나오는 자료를 가져왔는데 2005년까지뿐이 지원을 안하길래 일단 제가 2040년 까지는 추가를 해봤습니다. 어떤분이 만드신건지 알 수도 없네요. 개인적인 사용에는 문제가 안되겠죠?
(그누보드 내에서 음력<>양력 소스를 찾을 수 없었는데 혹시 생일 음력계산이나 뭐 다른용도로 사용할 수도 있을 듯 싶어 1900년 부터 현재까지도 그냥 포함시켰습니다.)


일단 방법은 간단합니다.
로고스타일을 css파일에서 정의해서 각 시즌별로 css파일을 따로 만들어 그누보드 루트에 넣고, 로고이미지도 따로 만들어 그누보드 img 폴더에 넣습니다.
관리자 모드에서 각 css파일을 보여줄 날짜(시작일,종료일)를 지정하는 식입니다.

스킨에 기본적으로 셋팅해놓은 시즌은
1) 기본 (logo.css 와 logo.png) - 전 png 이미지를 쓰는데 jpg나 gif를 쓰시면 css파일에서 지정하시면 됩니다.
2) 신년 (logo_0101.css 와 logo_0101.png)
3) 구정 (logo_0201.css 와 logo_0201.png)
4) 추석 (logo_0815.css 와 logo_0815.png)
5) 크리스마스 (logo_1225.css 와 logo_1225.png)
입니다.
다른 시즌 추가하시려면 소스 보시고 응용하시면 될 듯 싶습니다.

=================================================================================
[1]
일단 그누보드 DB 중 g4_config 테이블에 cf_logo_change 필드(varchar(255))를 추가합니다.
ALTER TABLE `g4_config` ADD cf_logo_change VARCHAR(255) NOT NULL;
이렇게 하면 되려나요?

[2]
첨부파일 중 adm 폴더 안의 파일들
logo_change.php
logo_change_update.php
를 그누보드 adm 폴더에 복사합니다.

관리자보드 메뉴 200400 으로 맞춰놨습니다. 이미 다른용도로 사용하고 계시면 다른 번호로 변경하셔야 합니다. 위 두 파일 모두 안에 2번째 줄입니다.
일단 200400으로 되어있으니 그누보드 adm 폴더에 있는 admin.menu200.php 파일을 연 후
7번째 줄쯤
array("200300", "회원메일발송", "$g4[admin_path]/mail_list.php"),
아래에
array("200400", "시즌별로고설정", "$g4[admin_path]/logo_change.php"),
을 추가합니다.

[3]
첨부파일 중 js 폴더 안의 파일
lunarCalendar.js
를 그누보드 js 폴더에 복사합니다.

[4]
이제부터 조금 복잡합니다. ㅜㅜ;
첨부파일 중 head.sub-ADD.php 안의 내용을 모두 복사해서
그누보드 head.sub.php 파일 중간 약 52번째 줄 부분

<title><?=$g4['title']?></title>
<link rel="stylesheet" href="<?=$g4['path']?>/style.css" type="text/css">

위 두줄 사이에 추가합니다. (타이틀과 css 링크 사이에)

[5]
첨부파일 중 logo.css 와 logo_1225.css 는 참고하시라고 넣어놨습니다.
** 각각의 로고이미지 파일은 css파일명과 같게 하고 그누보드 메인 img 폴더에 넣으셔야 합니다.
** css 파일은 메인루트(head.php 같은 파일 있는 곳)에 넣으셔야 하고요.

저는 head.php 파일 안에 상단 로고부분을 logo_css 의 내용에 맞춰 이렇게 처리했습니다.
=================================================================================
<div id="header">
    <!-- 상단 로고 시작 -->
          <div class="logo">
              <table width="100%" cellspacing="0" cellpadding="0" border="0">
                    <tr>
                        <td width="350" height="70" valign="middle"></td>
                        <td width="280" align="center" valign="bottom" class="top_logo"><a href="/" class="text_hid" title="싸이트 URL" onFocus="this.blur()">싸이트 URL</a></td>
                        <td width="350" valign="middle"></td>
                    </tr>
              </table>
          </div>
    <!-- 상단 로고 끝 -->
</div>
=================================================================================

처음 올리는 스킨이라 미숙한 점이 많습니다. 알맞게 수정해서 사용하시면 더 좋을 것 같습니다.
요정도가 제 실력의 한계라서... 많은 조언 주셨음 합니다.

그리고 제 관리자모드에 셋팅을 해논것을 범용? 그누보드용으로 수정해서 올려서 제대로 수정되지 않는 부분이 있을 수도 있으니 지적해주시면 검토하겠습니다.

p.s 관리자모드 디자인은 고X몰 관리자모드 디자인을 많이 참조해서 개인적으로 바꾼거라 저런 모습으로는 안됩니다.

++++++++++++++++++++++++++++++++
2012-01-11 04:07
혹시 로고 이미지 외에 뒷배경도 넣을 때 관리자 모드에서 배경도 보이게 수정해서 파일 다시 올렸습니다. 다 똑같고 관리자모드에서 로고 이미지 보이는 부분에 뒷배경이 있으면 같이 보입니다.
<td><img src="<?=$g4[path]?>/img/logo<?=$css1?>.png" width="160" border="0" align="absmiddle"></td>
이런 부분들이
<td style="background:url('<?=$g4[path]?>/img/logo_bg<?=$css1?>.gif') top center no-repeat #FFFFFF;"><img src="<?=$g4[path]?>/img/logo<?=$css1?>.png" border="0" align="absmiddle"></td>
이렇게 수정됐습니다.

다만 뒷배경 이미지 파일명은 logo_bg.gif (기본) 또는 logo_bg_1225.gif 이런식이어야 하고 역시 img폴더에 들어가야 합니다.
예)
logo_1225.css -> css파일
logo_1225.png(또는 jpg, gif) -> 로고파일 : img폴더 내
logo_bg_1225.gif -> 해더배경(로고배경 파일) : img폴더 내
배경이미지 추가는 역시 css에서 지정해주시면 됩니다. (첨부파일 logo_1225.css 참조)
추천
25

댓글 전체

관리자모드 저도 공개를 하면 좋겠는데 레이아웃 등을 모두 맞춤형으로 다 손을 봐놔서...
이미지들은 몇개는 뭐 제가 수정해서 만들고 했지만 기본형이 고X몰 관리자모드 스타일이라서 공개해서 쉐어하면 그쪽에서 문제걸지 않을까요?
제가 조금 손을 봐서 한번 시간되면 스킨으로 올려보겠습니다.
그런데요... 관리자모드에서의 설명중 [시즌별 종류] 에
(양력: 01월 01일) <- 이게 (음력: 01월 01일)
[날짜설정] 에
(음력: 2012년 01월 23일) <- 요건 (양력: 2012년 01월 23일)
이렇게 뒤바껴야 맞는건가요? 계속 들여다 보고 있으니 뭔가 이상한 듯도 싶네요.
---
음 아무래도 이상해서 수정했습니다. ㅠㅠ;
전 배너관리는 TopSchooL님 플러그인 사용하고 있는데 아주 잘 만드셨던데요. 좋더라구요 ^^;
테이블 추가 안하고 그냥 config 테이블 여유필드 쓰실려면 첨부한 php파일들에서 cf_logo_change 부분을 모두 여유필드 이름(cf_1 등...)으로 바꾸시면 됩니다.
航海 님은 고수라서 알고 계시는데 다른분들께 팁되라고 물어보시는거라 생각되네요 ^^;
네 ^^ css부분은 개인 셋팅에 따라 틀려질 수 있는 부분이라 좀 설명이 깔끔하진 않고 복잡합니다.
곧 시간되면 관리자모드 스킨도 올려보겠습니다.
Fatal error: Call to undefined function subtitle() in /usr/local/apache2/htdocs/html/usdslr/gn4/adm/logo_change.php on line 38

디비추가하고
각종 파일 다 복사했습니다.

logo_change.php에서 subtitle 정의 되어 있는데 왜 그런지 모르겠네요
이제봐서 답변이 많이 늦었습니다. 죄송합니다.
아마도 기본 그누보드가 아닌 빌더를 쓰고 계신게 아닌가 생각됩니다.
그냥 logo_change.php 파일 안에
<?=subtitle("시즌별 로고설정")?>
를 삭제하시는 것이 나을 듯 보입니다.
그냥 "시즌별 로고설정" 이라고 타이틀을 보여주는 것 뿐입니다.

참고로 subtitle() 기능을 설명드리면,
기본 그누보드 adm폴더중 admin.lib.php 파일 내 240번째 줄쯤에 subtitle($title, $more="") 이 정의되어 있습니다.
거기서 미리 정의된 대로 타이틀(예: 시즌별 로고설정)을 꾸며주는 기능입니다.
앞에 화살표나 동그라미 등의 이미지가 붙고, 글씨의 색상 또는 볼드체로 바꿔주는 등의 역할입니다.

빌더를 쓰고 계시다면 대상 기능의 이름이 어떻게 바뀌었는지... 알수가 없으니 달리 대처하는 방법을 알려드릴수가 없네요.
전체 5,853 |RSS
그누4 스킨 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT