내용 클릭시 '레이아웃'이 깨지는 현상 질문 드립니다.

내용 클릭시 '레이아웃'이 깨지는 현상 질문 드립니다.

QA

내용 클릭시 '레이아웃'이 깨지는 현상 질문 드립니다.

답변 1

본문

유튜브 게시판을 적용해 보려는데

첨부 이미지 처럼 문제가 생기네요.

 

어떻게 해야할까요?

 

스킨은...

https://sir.kr/g5_skin/3070?sfl=wr_subject%7C%7Cwr_content&stx=%EC%9C%A0%ED%8A%9C%EB%B8%8C&page=2 

 

3601d9da84cb87987d1c7d4480fb3f34_1487644806_8934.jpg
스킨의 view.skin.php 는...

 

<?php

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

//include_once(G5_LIB_PATH.'/thumbnail.lib.php');

 

// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);

?>

 

<script src="<?php echo G5_JS_URL; ?>/viewimageresize.js"></script>

 

<!-- 게시물 읽기 시작 { -->

<div id="bo_v_table"><?php echo $board['bo_subject']; ?></div>

 

<article id="bo_v" style="width:<?php echo $width; ?>">

    <header>

        <h1 id="bo_v_title">

            <?php

            if ($category_name) echo $view['ca_name'].' | '; // 분류 출력 끝

            echo cut_str(get_text($view['wr_subject']), 70); // 글제목 출력

            ?>

        </h1>

    </header>

 

    <section id="bo_v_info">

        <h2>페이지 정보</h2>

        작성자 <strong><?php echo $view['name'] ?><?php if ($is_ip_view) { echo " ($ip)"; } ?></strong>

        <span class="sound_only">작성일</span><strong><?php echo date("y-m-d H:i", strtotime($view['wr_datetime'])) ?></strong>

        조회<strong><?php echo number_format($view['wr_hit']) ?>회</strong>

        댓글<strong><?php echo number_format($view['wr_comment']) ?>건</strong>

    </section>

 

    <?php

    if ($view['file']['count']) {

        $cnt = 0;

        for ($i=0; $i<count($view['file']); $i++) {

            if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view'])

                $cnt++;

        }

    }

     ?>

 

    <?php if($cnt) { ?>

    <!-- 첨부파일 시작 { -->

    <section id="bo_v_file">

        <h2>첨부파일</h2>

        <ul>

        <?php

        // 가변 파일

        for ($i=0; $i<count($view['file']); $i++) {

            if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view']) {

         ?>

            <li>

                <a href="<?php echo $view['file'][$i]['href'];  ?>" class="view_file_download">

                    <img src="<?php echo $board_skin_url ?>/img/icon_file.gif" alt="첨부">

                    <strong><?php echo $view['file'][$i]['source'] ?></strong>

                    <?php echo $view['file'][$i]['bf_content'] ?> (<?php echo $view['file'][$i]['size'] ?>)

                </a>

                <span class="bo_v_file_cnt"><?php echo $view['file'][$i]['download'] ?>회 다운로드</span>

                <span>DATE : <?php echo $view['file'][$i]['datetime'] ?></span>

            </li>

        <?php

            }

        }

         ?>

        </ul>

    </section>

    <!-- } 첨부파일 끝 -->

    <?php } ?>

 

    <?php

    if (implode('', $view['link'])) {

     ?>

     <!-- 관련링크 시작 { -->

    <section id="bo_v_link">

        <h2>관련링크</h2>

        <ul>

        <?php

        // 링크

        $cnt = 0;

        for ($i=1; $i<=count($view['link']); $i++) {

            if ($view['link'][$i]) {

                $cnt++;

                $link = cut_str($view['link'][$i], 70);

         ?>

            <li>

                <a href="<?php echo $view['link_href'][$i] ?>" target="_blank">

                    <img src="<?php echo $board_skin_url ?>/img/icon_link.gif" alt="관련링크">

                    <strong><?php echo $link ?></strong>

                </a>

                <span class="bo_v_link_cnt"><?php echo $view['link_hit'][$i] ?>회 연결</span>

            </li>

        <?php

            }

        }

         ?>

        </ul>

    </section>

    <!-- } 관련링크 끝 -->

    <?php } ?>

 

    <!-- 게시물 상단 버튼 시작 { -->

    <div id="bo_v_top">

        <?php

        ob_start();

        

         ?>

        <?php if ($prev_href || $next_href) { ?>

        <ul class="bo_v_nb">

            <?php if ($prev_href) { ?><li><a href="<?php echo $prev_href ?>" class="btn_b01">이전글</a></li><?php } ?>

            <?php if ($next_href) { ?><li><a href="<?php echo $next_href ?>" class="btn_b01">다음글</a></li><?php } ?>

        </ul>

        <?php } ?>

 

        <ul class="bo_v_com">

            <?php if ($update_href) { ?><li><a href="<?php echo $update_href ?>" class="btn_b01">수정</a></li><?php } ?>

            <?php if ($delete_href) { ?><li><a href="<?php echo $delete_href ?>" class="btn_b01" onclick="del(this.href); return false;">삭제</a></li><?php } ?>

            <?php if ($copy_href) { ?><li><a href="<?php echo $copy_href ?>" class="btn_admin" onclick="board_move(this.href); return false;">복사</a></li><?php } ?>

            <?php if ($move_href) { ?><li><a href="<?php echo $move_href ?>" class="btn_admin" onclick="board_move(this.href); return false;">이동</a></li><?php } ?>

            <?php if ($search_href) { ?><li><a href="<?php echo $search_href ?>" class="btn_b01">검색</a></li><?php } ?>

            <li><a href="<?php echo $list_href ?>" class="btn_b01">목록</a></li>

            <?php if ($reply_href) { ?><li><a href="<?php echo $reply_href ?>" class="btn_b01">답변</a></li><?php } ?>

            <?php if ($write_href) { ?><li><a href="<?php echo $write_href ?><?php if($sca){echo "&sca=".$sca;} ?>" class="btn_b02">글쓰기</a></li><?php } ?>

        </ul>

        <?php

        $link_buttons = ob_get_contents();

        ob_end_flush();

         ?>

    </div>

    <!-- } 게시물 상단 버튼 끝 -->

 

    <section id="bo_v_atc">

        <h2 id="bo_v_atc_title">본문</h2>

 

        <?php

        // 파일 출력

        $v_img_count = count($view['file']);

        if($v_img_count) {

            echo "<div id=\"bo_v_img\">\n";

 

            for ($i=0; $i<=count($view['file']); $i++) {

                if ($view['file'][$i]['view']) {

                    //echo $view['file'][$i]['view'];

                    echo get_view_thumbnail($view['file'][$i]['view']);

                }

            }

 

            echo "</div>\n";

        }

         ?>

 

<?php 

// 동영상

// 링크 : https://www.youtube.com/watch?v=Xc1KaePfc6Q

$youtube_link = $view['wr_10'];

$youtube_url = parse_url($youtube_link);

parse_str($youtube_url['query']);

 

// 다음팟 http://tvpot.daum.net/v/vf1f9xx6oCXBCGGx8GJRC8t

$daumpot_url = $view['wr_10'];

$daum_find = "daum";

if(strpos($daumpot_url, $daum_find)){

$daumpot_limit = parse_url($daumpot_url, PHP_URL_PATH);

$daumpot_limit = str_replace("/v/", "", $daumpot_limit);

}

?>

 

<?php if($v){ ?>

<iframe width="728" height="450" src="//www.youtube.com/embed/<?php echo $v; ?>?feature=player_detailpage&vq=hd720" frameborder="0" allowfullscreen></iframe>

<p></p>

<?php } ?>

 

<?php if($daumpot_limit){ ?>

<iframe title='' width='728' height='450' src='http://videofarm.daum.net/controller/video/viewer/Video.html?vid=<?php echo $daumpot_limit ?>&play_loc=undefined' frameborder='0' scrolling='no' ></iframe>

<p></p>

<?php } ?>

 

        <!-- 본문 내용 시작 { -->

        <div id="bo_v_con"><?php echo $view['content'];//get_view_thumbnail($view['content']); ?></div>

        <?php//echo $view['rich_content']; // view_image($view, '0', '') 과 같은 코드를 사용할 경우 ?>

        <!-- } 본문 내용 끝 -->

 

        <?php if ($is_signature) { ?><p><?php echo $signature ?></p><?php } ?>

 

        <!-- 스크랩 추천 비추천 시작 { -->

        <?php if ($scrap_href || $good_href || $nogood_href) { ?>

        <div id="bo_v_act">

            <?php if ($scrap_href) { ?><a href="<?php echo $scrap_href;  ?>" target="_blank" class="btn_b01" onclick="win_scrap(this.href); return false;">스크랩</a><?php } ?>

            <?php if ($good_href) { ?>

            <span class="bo_v_act_gng">

                <a href="<?php echo $good_href.'&'.$qstr ?>" id="good_button" class="btn_b01">추천 <strong><?php echo number_format($view['wr_good']) ?></strong></a>

                <b id="bo_v_act_good"></b>

            </span>

            <?php } ?>

            <?php if ($nogood_href) { ?>

            <span class="bo_v_act_gng">

                <a href="<?php echo $nogood_href.'&'.$qstr ?>" id="nogood_button" class="btn_b01">비추천  <strong><?php echo number_format($view['wr_nogood']) ?></strong></a>

                <b id="bo_v_act_nogood"></b>

            </span>

            <?php } ?>

        </div>

        <?php } else {

            if($board['bo_use_good'] || $board['bo_use_nogood']) {

        ?>

        <div id="bo_v_act">

            <?php if($board['bo_use_good']) { ?><span>추천 <strong><?php echo number_format($view['wr_good']) ?></strong></span><?php } ?>

            <?php if($board['bo_use_nogood']) { ?><span>비추천 <strong><?php echo number_format($view['wr_nogood']) ?></strong></span><?php } ?>

        </div>

        <?php

            }

        }

        ?>

        <!-- } 스크랩 추천 비추천 끝 -->

    </section>

 

    <?php

    include_once(G5_SNS_PATH."/view.sns.skin.php");

    ?>

 

    <?php

    // 코멘트 입출력

    include_once('./view_comment.php');

     ?>

 

    <!-- 링크 버튼 시작 { -->

    <div id="bo_v_bot">

        <?php echo $link_buttons ?>

    </div>

    <!-- } 링크 버튼 끝 -->

 

</article>

<!-- } 게시판 읽기 끝 -->

 

<script>

<?php if ($board['bo_download_point'] < 0) { ?>

$(function() {

    $("a.view_file_download").click(function() {

        if(!g5_is_member) {

            alert("다운로드 권한이 없습니다.\n회원이시라면 로그인 후 이용해 보십시오.");

            return false;

        }

 

        var msg = "파일을 다운로드 하시면 포인트가 차감(<?php echo number_format($board['bo_download_point']) ?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?";

 

        if(confirm(msg)) {

            var href = $(this).attr("href")+"&js=on";

            $(this).attr("href", href);

 

            return true;

        } else {

            return false;

        }

    });

});

<?php } ?>

 

function board_move(href)

{

    window.open(href, "boardmove", "left=50, top=50, width=500, height=550, scrollbars=1");

}

</script>

 

<script>

$(function() {

    $("a.view_image").click(function() {

        window.open(this.href, "large_image", "location=yes,links=no,toolbar=no,top=10,left=10,width=10,height=10,resizable=yes,scrollbars=no,status=no");

        return false;

    });

 

    // 추천, 비추천

    $("#good_button, #nogood_button").click(function() {

        var $tx;

        if(this.id == "good_button")

            $tx = $("#bo_v_act_good");

        else

            $tx = $("#bo_v_act_nogood");

 

        excute_good(this.href, $(this), $tx);

        return false;

    });

 

    // 이미지 리사이즈

    $("#bo_v_atc").viewimageresize();

});

 

function excute_good(href, $el, $tx)

{

    $.post(

        href,

        { js: "on" },

        function(data) {

            if(data.error) {

                alert(data.error);

                return false;

            }

 

            if(data.count) {

                $el.find("strong").text(number_format(String(data.count)));

                if($tx.attr("id").search("nogood") > -1) {

                    $tx.text("이 글을 비추천하셨습니다.");

                    $tx.fadeIn(200).delay(2500).fadeOut(200);

                } else {

                    $tx.text("이 글을 추천하셨습니다.");

                    $tx.fadeIn(200).delay(2500).fadeOut(200);

                }

            }

        }, "json"

    );

}

</script>

<!-- } 게시글 읽기 끝 -->

 

 

왕초보에게 가르침 부탁 드리겠습니다.

이 질문에 댓글 쓰기 :

답변 1

view.skin.php 문제 같아 보이지만 실제로는 view_comment.skin.php 파일 문제입니다. 

코멘트 관련 파일도 view 화면에서 같이 불러오는데 이 파일에 문제가 있으면 에러가 뜹니다.

해당 스킨은 오래전에 제작된 스킨이라서 최근 그누보드와는 맞지가 않습니다.

아래 내용 수정하면 정상적으로 될 겁니다.

 

 

<?php

include(G5_SNS_PATH."/view_comment_write.sns.skin.php");

?>

여기를 이렇게 수정.

<?php

if($board['bo_use_sns'] && ($config['cf_facebook_appid'] || $config['cf_twitter_key'])) {

?>

<tr>

    <th scope="row">SNS 동시등록</th>

    <td id="bo_vc_send_sns"></td>

</tr>

<?php

}

?>

 

같은 파일 하단 스크립트에 추가

 

<?php if($board['bo_use_sns'] && ($config['cf_facebook_appid'] || $config['cf_twitter_key'])) { ?>

// sns 등록

$(function() {

    $("#bo_vc_send_sns").load(

        "<?php echo G5_SNS_URL; ?>/view_comment_write.sns.skin.php?bo_table=<?php echo $bo_table; ?>",

        function() {

            save_html = document.getElementById('bo_vc_w').innerHTML;

        }

    );

});

<?php } ?>

 

최근 그누5 basic 게시판 스킨에서 view_comment.skin.php 파일 참고하시면 됩니다.

잘 안되면 파일을 그대로 덮어씌워버리고 체크를 먼저 해보세요.

 

수정 후 코멘트 작성 에러가 나면 이것도 하셔야겠네요.

https://sir.kr/g5_tip/4524

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 61,339
© SIRSOFT
현재 페이지 제일 처음으로