skin 수정하기 - 최신글

불당   
   조회 19973  

스킨을 수정하려면,

(1) 스킨을 부르는 곳을 확인하고
(2) 스킨에서 사용가능한 변수를 확인하고
(3) action이 있는 경우에는 각 action의 기능을 확인 합니다.

이러한 부분이 비교적 적은 것인 최근글이라 최근글 스킨을 기준으로 skin 수정을 확인합니다.

(1) 최신글 스킨을 부르는 곳은 /lib/latest.lib.php 입니다. 이곳을 보면, 스킨에서 사용가능한 변수부터 스킨의 사용방법까지 모두 확인 가능합니다.

(2) 최신글 스킨에서 사용이 가능한 변수는 아래와 같습니다. 스킨 수정 작업을 하기전에 어떤 변수가 사용되는지를 정리해두면 작업이 아주 편합니다.

latest로 함수로 전달되는 인자
- $bo_table : 게시판 id
- $rows : 출력할 라인수
- $subject : 제목
- $subject_len : 제목의 글자수
- $options : 기타옵션

전역변수
- $g4[ ... ] 

함수에서 정의한 변수
- $latest_skin_path : 스킨의 경로
- $board[...] : 게시판 정보
- $tmp_write_table : 게시판 테이블이름
- $list[$i][...] : 최근글의 정보

(3) action이 있는 경우는 해당 action을 확인해야 하는데, 최신글의 경우는 해당 최신글을 클릭했을 때, 게시글로 이동하는 기능만 넣는게 통상 입니다. 게시판 아이디(bo_table)과 게시판글번호($list[$i][wr_id])를 알기 때문에, >a href="...">로 간단히 기능을 사용할 수 있습니다.

(4) 스킨의 수정 (붉은 글씨는 코드와 전혀 무관하며 참조용 입니다)

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 <- 이렇게 정의해야 스킨만 부르는거 못하게 합니다. 필수~!
?>

최신글의 윗부분 - 제목이랑 뭐 그런거 정의하는 부분 입니다. 전체 디자인을 먼저 만들고, 다음으로 loop 부분을 넣으면 됩니다.
<table width=100% cellpadding=0 cellspacing=0>
<tr>
    <td width=14><img src='<?=$latest_skin_path?>/img/latest_t01.gif'></td> <- 스킨의 이미지 경로는 <?=$latest_skin_path?>/img/이미지이름.gif 와 같이 쓰면 됩니다.
    <td width='100%' background='<?=$latest_skin_path?>/img/bg_latest.gif'>&nbsp;&nbsp;<strong><a href='<?=$g4[bbs_path]?>/board.php?bo_table=<?=$bo_table?>'><?=$board[bo_subject]?></a></strong></td>
    <td width=37 background='<?=$latest_skin_path?>/img/bg_latest.gif'><a href='<?=$g4[bbs_path]?>/board.php?bo_table=<?=$bo_table?>'><img src='<?=$latest_skin_path?>/img/more.gif' border=0></a></td>
    <td width=14><img src='<?=$latest_skin_path?>/img/latest_t02.gif'></td>
</tr>
</table>

<table width=100% cellpadding=0 cellspacing=0>
<? for ($i=0; $i<count($list); $i++) { ?> ... 최근글의 데이터를 출력하는 loop 입니다. 가지고 온 $list[$i]의 갯수만큼 loop를 돌리게 되죠.
<tr>
    <td colspan=4 align=center>
        <table width=95%>
        <tr>
            <td height=25><img src='<?=$latest_skin_path?>/img/latest_icon.gif' align=absmiddle>&nbsp;&nbsp;
            <?
            echo $list[$i]['icon_reply'] . " ";
            echo "<a href='{$list[$i]['href']}'>";
            if ($list[$i]['is_notice'])
                echo "<font style='font-family:돋움; font-size:9pt; color:#2C88B9;'><strong>{$list[$i]['subject']}</strong></font>";
            else
                echo "<font style='font-family:돋움; font-size:9pt; color:#6A6A6A;'>{$list[$i]['subject']}</font>";
            echo "</a>";

            if ($list[$i]['comment_cnt'])
                echo " <a href=\"{$list[$i]['comment_href']}\"><span style='font-family:돋움; font-size:8pt; color:#9A9A9A;'>{$list[$i]['comment_cnt']}</span></a>";

            // if ($list[$i]['link']['count']) { echo "[{$list[$i]['link']['count']}]"; }
            // if ($list[$i]['file']['count']) { echo "<{$list[$i]['file']['count']}>"; }

            echo " " . $list[$i]['icon_new'];
            echo " " . $list[$i]['icon_file'];
            echo " " . $list[$i]['icon_link'];
            echo " " . $list[$i]['icon_hot'];
            echo " " . $list[$i]['icon_secret'];
            ?></td></tr>
        <tr><td bgcolor=#EBEBEB height=1></td></tr>
        </table></td>
</tr>
<? } ?>

<? if (count($list) == 0) { ?><tr><td colspan=4 align=center height=50><font color=#6A6A6A>게시물이 없습니다.</a></td></tr><? } ?>

</table>

- opencode.co.kr -
아모레퍼시픽 공식 온라인몰
매달 기본 5천원 쿠폰, 금액대별 풍성한 사은품까지! 공식몰 단독 기획상품 확인
레디코스메틱 공식몰
뭘발라도 엉망인 피부, 이제는 인공호흡할 때! 알로에92%, 수분 한가득
LF아울렛 공식몰 74%할인
LF아울렛에선 365일 할인가 적용! 합리적가격의 다양한 직수입 브랜드, SKIN
파워링크 AD   클릭초이스등록


제목Page 1/1
     
2016-06   27596   불당
2015-09   65678   불당
2011-12   186298   불당
2015-09   62591   불당
2016-05   46765   불당
2014-02   6204   불당
2011-12   12966   불당
2011-10   10374   불당
2011-10   12901   불당
2009-06   8132   불당
2009-03   8029   불당
2009-02   19974   불당
2009-02   15749   불당
2009-02   13977   불당
2009-02   15689   불당
2009-02   18935   불당
2009-02   14514   불당
2009-06   7759   불당
2009-02   13921   불당
2009-02   29342   불당
2009-02   30221   불당