최신글에 유튜브 썸네일 나오게 할려면 채택완료
최신글에서 유튜브 썸네일 나오게 할려면 어찌 해야 할까요?
외부 이미지 나오게 해 놓았더니 이제는 유튜브 이미지가 나오지 않아서요.
소스 좀 봐 주실래요?
</strong></p>
<pre>
<a href="<?php echo $list[$i]['href'] ?>" class="gall_img"><?php
$v = "";
$mov_link = "";
$img_content = "";
$mov_link = $list[$i]['wr_10'];
$youtube_url = parse_url($mov_link);
parse_str($youtube_url['query']);
if($v){
$img_content = '<img src="'.get_yt_thumb( '<a href="http://youtu.be/'.$v," target="_blank" rel="noopener noreferrer">http://youtu.be/'.$v,</a> 'maxres' ).'" alt="'.$list[$i]['subject'].'" width="'.$thumb_width.'" height="'.$thumb_height.'" />';
}
if(!$img_content) {
$img_content = '<img src="'.$img.'" alt="'.$thumb['alt'].'" >';
}
$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], $thumb_width, $thumb_height, false, true);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'">';
// 외부 이미지 썸네일 만들기 {
} else if($url_img = get_editor_image($list[$i]['wr_content'])){
$img_src = $url_img[1][0];
preg_match("/src=[\'\"]?([^>\'\"]+[^>\'\"]+)/i", $img_src, $m);
$src = htmlspecialchars_decode($m[1]);
preg_match("/alt=[\"\']?([^\"\']*)[\"\']?/", $img_src, $m);
$alt = get_text($m[1]);
$filename = hash("sha256", $src);
$source_path = $target_path = G5_DATA_PATH.'/file/'.$bo_table;
$file_download = $target_path."/".$filename;
if (!file_exists($file_download)) {
copy($src, $file_download);
}
$thumb_src = thumbnail($filename, $source_path, $target_path, $thumb_width, $thumb_height, false, true);
$img_content = '<img src="'.G5_DATA_URL.'/file/'.$bo_table.'/'.$thumb_src.'" alt="'.$alt.'" >';
// } 외부 이미지 썸네일 만들기
} else {
$img_content = '';
}
if($thumb['src']) {
$img_content = '<span style="width:'.$thumb_width.'px;height:'.$thumb_height.'px"><img src="'.$img.'" alt="'.$thumb['alt'].'" ></span>';
}
echo $img_content;
?></a></pre>
<p><strong>
답변 3개
https://blog.yesyo.com/entry/%EC%9C%A0%ED%8A%9C%EB%B8%8CYoutube-%EC%9D%B4%EB%AF%B8%EC%A7%80%EC%8D%B8%EB%84%A4%EC%9D%BC-%EC%A3%BC%EC%86%8C">https://blog.yesyo.com/entry/%EC%9C%A0%ED%8A%9C%EB%B8%8CYoutube-%EC%9D%B4%EB%AF%B8%EC%A7%80%EC%8D%B8%EB%84%A4%EC%9D%BC-%EC%A3%BC%EC%86%8C
댓글을 작성하려면 로그인이 필요합니다.
상단에서 유튭 이미지를 생성 후 해당 이미지 변수에 데이터가 덮어써지는거 같은데..
유튭 이미지 생성 후 echo 찍어보세요 잘 생성되는지..
그리고 언제 덮어쓰거나 초기화 되는지 확인해가면서 포인트를 찾아가보세요
추적해가야 하는데 상상만으로는 확답드리기는 어렵겠네요.. 하나하나 찾아가보시면 답 나올겁니다.
댓글을 작성하려면 로그인이 필요합니다.
유튜브 id 값만 추축해서 해당 주소에
http://i.ytimg.com/vi/ 유튜브ID /0.jpg">http://i.ytimg.com/vi/ 유튜브ID /0.jpg
이렇게 반영해 주시면 해당 썸네일 확인이 가능합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/thumbnail.lib.php');
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">', 0);
$thumb_width = 320;
$thumb_height = 180;
if ( ! function_exists( 'get_video_id' ) )
{
function get_video_id( $str )
{
if( substr( $str, 0, 4 ) == 'http' )
{
if( strpos( $str, 'youtu.be' ) )
{
return array_pop( explode( '/', $str ) );
}
else if( strpos( $str, '/embed/' ) )
{
return array_pop( explode( '/', $str ) );
}
else if( strpos( $str, '/v/' ) )
{
return array_pop( explode( '/', $str ) );
}
else
{
$params = explode( '&', array_shift( explode( '#', array_pop( explode( '?', $str ) ) ) ) );
foreach( $params as $data )
{
$arr = explode( '=', $data );
if( $arr[ 0 ] == 'v' )
{
return $arr[ 1 ];
}
}
}
}
else
{
return $str;
}
return '';
}
}
if ( ! function_exists( 'get_yt_thumb' ) )
{
function get_yt_thumb( $url_or_id, $type )
{
switch( $type )
{
case '0' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/0.jpg';
break;
case '1' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/1.jpg';
break;
case '2' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/2.jpg';
break;
case '3' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/3.jpg';
break;
case 'hq' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/hqdefault.jpg';
break;
case 'mq' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/mqdefault.jpg';
break;
case 'sd' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/sddefault.jpg';
break;
case 'maxres' :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/maxresdefault.jpg';
break;
default :
return '//img.youtube.com/vi/'.get_video_id( $url_or_id ).'/default.jpg';
}
}
}
?>