최신글 출력 코드 넣을 때...

최신글 출력 코드 넣을 때...

QA

최신글 출력 코드 넣을 때...

본문

안녕하세요. 

완전 쌩초보적인 질문을 또 하게되었네요.

 

최신글 적용할 때 말입니다....

 

아래는 기본 theme/basic의 기본 최신글이 적용된 index.php 파일입니다.

 

----------------------------------

<?php

define('_INDEX_', true);

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

 

if (G5_IS_MOBILE) {

    include_once(G5_THEME_MOBILE_PATH.'/index.php');

    return;

}

 

include_once(G5_THEME_PATH.'/head.php');

?>

 

<h2 class="sound_only">최신글</h2>

<!-- 최신글 시작 { -->

<?php

//  최신글

$sql = " select bo_table

            from `{$g5['board_table']}` a left join `{$g5['group_table']}` b on (a.gr_id=b.gr_id)

            where a.bo_device <> 'mobile' ";

if(!$is_admin)

    $sql .= " and a.bo_use_cert = '' ";

$sql .= " order by b.gr_order, a.bo_order ";

$result = sql_query($sql);

for ($i=0; $row=sql_fetch_array($result); $i++) {

    if ($i%2==1) $lt_style = "margin-left:20px";

    else $lt_style = "";

?>

    <div style="float:left;<?php echo $lt_style ?>">

        <?php

        // 이 함수가 바로 최신글을 추출하는 역할을 합니다.

        // 사용방법 : latest(스킨, 게시판아이디, 출력라인, 글자수);

        // 테마의 스킨을 사용하려면 theme/basic 과 같이 지정

        echo latest('theme/basic', $row['bo_table'], 5, 25);

        ?>

    </div>

<?php

}

?>

<!-- } 최신글 끝 -->

 

<?php

include_once(G5_THEME_PATH.'/tail.php');

?> 

 

--------------------------

 

이것은 그누보드 5를 설치하면 기본적으로 설치되어 있는 최신글이란건 다 아실겁니다.

 

여기서 최신글을 다른 것으로 바꿀려고 하면 위의 빨간색 부분에 때려 넣으면 되는줄 압니다.

그런데....일괄적으로 최신글을 적용하지 않고... 

 

어떤 게시판은 a라는 최신글 스킨, 또 b라는 최신글 스킨 등등...

혼합하여 사용할 때는 어떻게 하면 좋은가요?

 

이 질문에 댓글 쓰기 :

답변 2

빨간색 위에 사용방법에 나와있는것처럼.

 

latest(스킨, 게시판아이디, 출력라인, 글자수);

 

입니다.

 

스킨을 바꾸시려면

 

latest(a스킨, 게시판아이디, 출력라인, 글자수);

latest(b스킨, 게시판아이디, 출력라인, 글자수);

 

게시판을 바꾸시려면

 

latest(스킨, a게시판, 출력라인, 글자수);

latest(스킨, b게시판, 출력라인, 글자수);

 

이렇게 사용하시면 됩니다.

 

위에 빨간색의 경우는 loop를 돌고 있으므로 모든 게시판이 출력됩니다.

 

for문 바깥에서출력하시면 됩니다.

 

근데 만약 저 loop문 안에서 스킨만 변경하겠다고 하면 if 문을 쓰셔서 조건제어하시면 됩니다.

 

if($row['bo_table'] == 'freeboard'):

  a스킨

else :

  b스킨

endif;

 

그럼....
이런식으로 하면 됩니까?
스킨을 basic과 basic3를 하나하나 적용하려면....

<?php
//  최신글
$sql = " select bo_table
            from `{$g5['board_table']}` a left join `{$g5['group_table']}` b on (a.gr_id=b.gr_id)
            where a.bo_device <> 'mobile' ";
if(!$is_admin)
    $sql .= " and a.bo_use_cert = '' ";
$sql .= " order by b.gr_order, a.bo_order ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
    if ($i%2==1) $lt_style = "margin-left:20px";
    else $lt_style = "";
?>
    <div style="float:left;<?php echo $lt_style ?>">
        <?php
        // 이 함수가 바로 최신글을 추출하는 역할을 합니다.
        // 사용방법 : latest(스킨, 게시판아이디, 출력라인, 글자수);
        // 테마의 스킨을 사용하려면 theme/basic 과 같이 지정
        echo latest('theme/basic', test2, 5, 25);
echo latest('theme/basic3', test1, 5, 25);
        ?>
    </div>
<?php
}
?>
<!-- } 최신글 끝 -->

이렇게 하니까.....글이 반복됩니다. ㅠ.ㅠ

<?php

echo latest('theme/basic', 'freeboard', 5, 25);

?>


<?php

echo latest('theme/basic', 'faq', 5, 25);

?>

예를 들어, freeboard라는 게시판id와 faq라는 게시판 id 인 경우 위와 같은 내용은 원하는 부분에 넣으시면 됩니다.

<?php

echo latest(사용하는스킨, 게시판 id, 출력하는 줄수, 제목글자수);

?>

답변을 작성하시기 전에 로그인 해주세요.
전체 123,674 | RSS
QA 내용 검색

회원로그인

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