오늘본 게시물의 썸네일

오늘본 게시물의 썸네일

QA

오늘본 게시물의 썸네일

답변 1

본문

오늘본 게시물 중에 유튜브 영상게시판의 경우

썸네일이 안나오는데 이거 유튜브 게시판의 경우 해당 게시판의 썸네일 을

어떻게 해야지 가져올수있을까요

        <?php
        $tv_tot_count = 0;
        $k = 0;
        for ($i=1;$i<=$tv_idx;$i++)
        {
            $tv_wr_idx = $tv_idx - ($i - 1);
            $tv_wr_id = get_session("ss_tv[$tv_wr_idx]");
            $tv_board = get_session("ss_tv_board[$tv_wr_idx]");
            $tv_board_prefix = $g5['write_prefix'].$tv_board;

            $rowx = sql_fetch(" select wr_id, wr_subject from {$tv_board_prefix} where wr_id = '$tv_wr_id' ");
            if(!$rowx['wr_id'])
                continue;
            
            if ($tv_tot_count % $tv_div['img_length'] == 0) $k++;

            $wr_subject = get_text($rowx['wr_subject']);
            $thumb = get_list_thumbnail($tv_board, $tv_wr_id, $tv_div['img_width'], $tv_div['img_height']);

            if($thumb['src']) {
                $img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$tv_div['img_width'].'" height="'.$tv_div['img_height'].'">';
            } else {
                $img_content = '<span style="width:'.$tv_div['img_width'].'px;height:'.$tv_div['img_height'].'px"><img src="/logo.gif" width="70" height="50"></span>';
            }

            if ($tv_tot_count == 0) echo '<ul id="stv_ul">'.PHP_EOL;
            echo '<li class="stv_item c'.$k.'">'.PHP_EOL;
            echo '<a href="'.G5_BBS_URL.'/board.php?bo_table='.$tv_board.'&wr_id='.$tv_wr_id.'">'.$img_content.'';
            echo '<br>';
            echo cut_str($wr_subject, 10, '</a>').PHP_EOL;
            echo '</li>'.PHP_EOL;

            $tv_tot_count++;
        } 
        if ($tv_tot_count > 0) echo '</ul>'.PHP_EOL;
        ?>

일반 게시판은 썸네일이 없으면 고정 썸네일로 잘나오는데

유튜브 게시판의 경우 오로지 유튜브 영상이랑 목록에는 썸네일만 보여주는거외는

아무것도없는데 유튜브 영상 게시판을 보면 해당 본 게시판의 썸네일을 보여주고싶어요

이 질문에 댓글 쓰기 :

답변 1

유튜브 썸네일의 경우 유튜브 아이디 추출이 필요해서 아래의 코드를 참고를 해보세요.

 

<?php
$tv_tot_count = 0;
$k = 0;
for ($i=1;$i<=$tv_idx;$i++)
{
    $tv_wr_idx = $tv_idx - ($i - 1);
    $tv_wr_id = get_session("ss_tv[$tv_wr_idx]");
    $tv_board = get_session("ss_tv_board[$tv_wr_idx]");
    $tv_board_prefix = $g5['write_prefix'].$tv_board;

    $rowx = sql_fetch(" select wr_id, wr_subject, wr_content from {$tv_board_prefix} where wr_id = '$tv_wr_id' ");
    if(!$rowx['wr_id'])
        continue;
    
    if ($tv_tot_count % $tv_div['img_length'] == 0) $k++;

    $wr_subject = get_text($rowx['wr_subject']);
    
    // 유튜브 영상 ID 추출
    $youtube_id = '';
    if (preg_match('/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=)?(.+)/', $rowx['wr_content'], $matches)) {
        $youtube_id = $matches[1];
    }

    if ($youtube_id) {
        // 유튜브 썸네일 URL 생성
        $thumb_url = "https://img.youtube.com/vi/{$youtube_id}/mqdefault.jpg";
        $img_content = '<img src="'.$thumb_url.'" alt="'.$wr_subject.'" width="'.$tv_div['img_width'].'" height="'.$tv_div['img_height'].'">';
    } else {
        $thumb = get_list_thumbnail($tv_board, $tv_wr_id, $tv_div['img_width'], $tv_div['img_height']);
        if($thumb['src']) {
            $img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$tv_div['img_width'].'" height="'.$tv_div['img_height'].'">';
        } else {
            $img_content = '<span style="width:'.$tv_div['img_width'].'px;height:'.$tv_div['img_height'].'px"><img src="/logo.gif" width="70" height="50"></span>';
        }
    }

    if ($tv_tot_count == 0) echo '<ul id="stv_ul">'.PHP_EOL;
    echo '<li class="stv_item c'.$k.'">'.PHP_EOL;
    echo '<a href="'.G5_BBS_URL.'/board.php?bo_table='.$tv_board.'&wr_id='.$tv_wr_id.'">'.$img_content.'';
    echo '<br>';
    echo cut_str($wr_subject, 10, '</a>').PHP_EOL;
    echo '</li>'.PHP_EOL;

    $tv_tot_count++;

if ($tv_tot_count > 0) echo '</ul>'.PHP_EOL;
?>

 

 

 

아무래도 유튜브쪽에서 추출해서 가져오는거에 한계가있어서
게시판에 등록된 썸네일 $as_thumb = $rowx['as_thumb']; 필드에서
강제로 가져오니 나오네요.

        if ($thumb['src']) {
            $img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$tv_div['img_width'].'" height="'.$tv_div['img_height'].'">';

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