테스트 사이트 - 개발 중인 베타 버전입니다

최신글 썸네일 등록하기 소스좀 봐주세요 채택완료

뭉치형님 6년 전 조회 2,652

안녕하세요. 

현재 진행상황이 첨부파일로만 이미지를 올렸을때는 썸네일이 등록이 되나,

외부 이미지나 유튜브는 최신글 썸네일이 뜨질 않습니다.

외부이미지는 https://sir.kr/g5_tip/2657">https://sir.kr/g5_tip/2657 이 글 참고해서 data/file 에 잘 저장이 되는것을 확인하였습니다.

유튜브 소스는 https://sir.kr/g5_skin/15094?sca=%EC%B5%9C%EC%8B%A0%EA%B8%80&sfl=wr_subject%7C%7Cwr_content&stx=%EC%8D%B8%EB%84%A4%EC%9D%BC&page=2">https://sir.kr/g5_skin/15094?sca=%EC%B5%9C%EC%8B%A0%EA%B8%80&sfl=wr_subject%7C%7Cwr_content&stx=%EC%8D%B8%EB%84%A4%EC%9D%BC&page=2 이 글을 참고 했구요

 

latest.skin.php 의 현재 소스는

</p>

<p><?php</p>

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

<p>include_once(G5_LIB_PATH.'/thumbnail.lib.php'); // 최신글에 썸네일 인클루드</p>

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

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

<p>add_javascript('<script src="'.G5_JS_URL.'/jquery.bxslider.js"></script>', 10);</p>

<p>?></p>

<p> </p>

<p><div class="lat"></p>

<p><h2 class="lat_title"><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>"><?php echo $bo_subject ?></a></h2></p>

<p><ul></p>

<p><?php</p>

<p>for ($i=0; $i<count($list); $i++) {</p>

<p>$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], false, true);</p>

<p> </p>

<p>if($thumb['ori']) {</p>

<p>$img = $thumb['ori'];</p>

<p>} else {</p>

<p>$img = G5_IMG_URL.'/no_img.png';</p>

<p>$thumb['alt'] = '이미지가 없습니다.';</p>

<p>}</p>

<p>$img_content = '<img src="'.$img.'" alt="'.$thumb['alt'].'" >';</p>

<p>?></p>

<p><li></p>

<p><?php</p>

<p> </p>

<p>echo "<a href=\"".$list[$i]['href']."\"> ";</p>

<p>echo $img_content; // <-- 썸네일 출력문</p>

<p>if ($list[$i]['is_notice'])</p>

<p>echo "<strong>".$list[$i]['subject']."</strong>";</p>

<p>else</p>

<p>echo $list[$i]['subject'];</p>

<p>



 </p>

<p>echo "</a>";</p>

<p>

 </p>

<p>?></p>

<p>

 </p>

<p></li></p>

<p><?php } ?></p>

<p><?php if (count($list) == 0) { //게시물이 없을 때 ?></p>

<p><li class="empty_li">게시물이 없습니다.</li></p>

<p><?php } ?></p>

<p></ul></p>

<p><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>" class="lt_more"><span class="sound_only"><?php echo $bo_subject ?></span><i class="fa fa-plus" aria-hidden="true"></i><span class="sound_only"> 더보기</span></a></p>

<p> </p>

<p></div></p>

<p> </p>

<p>

 

이거인데 첨부파일로 업로드 한것만 적용이 되는 상태이고

밑에는 제가 수정을 해본건데 콘솔에서 오류는 없는데 유튜브 썸네일만 생성이 되고 나머지는 이렇게 뜹니다.

 

 

 

 

코드는 이렇습니다.

</p>

<p><?php</p>

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

<p>include_once(G5_LIB_PATH.'/thumbnail.lib.php');</p>

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

<p>add_javascript('<script src="'.G5_JS_URL.'/jquery.bxslider.js"></script>', 10);</p>

<p>?></p>

<p> </p>

<p><div class="lat"></p>

<p><h2 class="lat_title"><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>"><?php echo $bo_subject ?></a></h2></p>

<p><ul></p>

<p><?php</p>

<p>if(count($list) >= 3){ $listscale = 1; }</p>

<p>    else{ $listscale = count($list); }</p>

<p>for ($i=0; $i<count($list); $i++) {</p>

<p>?></p>

<p><li></p>

<p><?php</p>

<p>echo "<a href=\"".$list[$i]['href']."\"> ";</p>

<p>if ($list[$i]['is_notice']){</p>

<p>echo "<strong>".$list[$i]['subject']."</strong>";</p>

<p>}elseif($thumb['ori']){</p>

<p>$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], false, true);</p>

<p>$img = $thumb['ori'];</p>

<p>$img_content = '<img src="'.$img.'" alt"'.$thumb['alt'].'" >';</p>

<p>echo $img_content;</p>

<p>echo $list[$i]['subject'];</p>

<p>}else{</p>

<p>$youtube_key = substr($list[$i]['wr_link1'],-11,11);</p>

<p>                $img_content = '<img src="<a href="https://img.youtube.com/vi/'.$youtube_key.'/mqdefault.jpg"" target="_blank" rel="noopener noreferrer">https://img.youtube.com/vi/'.$youtube_key.'/mqdefault.jpg"</a> alt="'.$thumb['alt'].'" width="205px" height="100px">';</p>

<p>                echo $img_content;</p>

<p>echo $list[$i]['subject'];</p>

<p>}</p>

<p>echo "</a>";</p>

<p>if ($list[$i]['comment_cnt']) echo "</p>

<p><span class=\"lt_cmt\">+ ".$list[$i]['comment_cnt']."</span>";</p>

<p>?></p>

<p><span class="lt_date"><?php echo $list[$i]['datetime2'] ?></span></p>

<p></li></p>

<p><?php } ?></p>

<p><?php if (count($list) == 0) { //게시물이 없을 때 ?></p>

<p><li class="empty_li">게시물이 없습니다.</li></p>

<p><?php } ?></p>

<p></ul></p>

<p><a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>" class="lt_more"><span class="sound_only"><?php echo $bo_subject ?></span><i class="fa fa-plus" aria-hidden="true"></i><span class="sound_only"> 더보기</span></a></p>

<p> </p>

<p></div>

 

어떻게 수정해야 할지 피드백 부탁드립니다.

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
L
6년 전

</p>

<pre>
}elseif($thumb['ori']){
$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], false, true);</pre>

<p>

$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], false, true); 가 

elseif($thumb['ori']){ 의 밑에 있기때문에 항상  $thumb['ori'] 값은 없습니다.

 

</p>

<p>if(<code>$list</code><code>[</code><code>$i</code><code>][</code><code>'is_notice'</code><code>]</code>){</p>

<p>}else{</p>

<p> <code>$thumb</code> <code>= get_list_thumbnail(</code><code>$bo_table</code><code>, </code><code>$list</code><code>[</code><code>$i</code><code>][</code><code>'wr_id'</code><code>], false, true);</code></p>

<p><code> if</code><code>(</code><code>$thumb</code><code>[</code><code>'ori'</code><code>]){</code></p>

<p><code>  //썸네일있음</code></p>

<p><code> }else{</code></p>

<p> //썸네일 없음 . Youtube 임.</p>

<p><code> }</code></p>

<p>}</p>

<p>

 

위 방식처럼 해야합니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

뭉치형님
6년 전
배운지 얼마 안되어서 이거만 붙잡고 몇일째 끙끙 댔는지.. 정말 감사합니다. 문법 공부좀 더 해야겠어요.

댓글을 작성하려면 로그인이 필요합니다.

등록하신 코드 21번 줄 }elseif($thumb['ori']){ 부분에서 else if 띄어쓰기 에러입니다.

다른 부분은 자세히 안봐서 잘 모르겠습니다 ^^;

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

뭉치형님
6년 전
띄어쓰기도 수정했지만 안됩니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인