리스트에 유튜브 질문드립니다.
본문
<?php for ($i = 0; $i < count($list); $i++) {
$link1_id = $list[$i]['wr_link1'];
?>
<div class="video-wrap">
<iframe id="video" width="100%" height="315" src="<?php echo $link1_id; ?>" frameborder="0" allow="encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<?php } ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<?php
if (!$list[$i]['is_notice']) {
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height']);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'" class="list_img">';
} else {
$img_content = '<img src="'.$board_skin_url.'/img/noimage.gif" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'" class="list_img">';
}
echo $img_content;
}
?>
<?php } ?>
리스트에서
링크1에 유튜브주소가 있을때는 유튜브 썸네일 나오고
릴크1에 유튜브 주소가 없을때는 파일업로드한 썸네일이 나오게 하는겁니다.
위코드에서처럼하면 유튜브만 나오고 일반사진은 안나옵니다.
황색줄표시한 부분이 잘못된것 같은데
수정좀 부탁드립니다 고수님
답변 2
<?php for ($i = 0; $i < count($list); $i++) {
$link1_id = $list[$i]['wr_link1'];
if ($link1_id) {
?>
<div class="video-wrap">
<iframe id="video" width="100%" height="315" src="<?php echo $link1_id; ?>" frameborder="0" allow="encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<?php } else { ?>
<?php
if (!$list[$i]['is_notice']) {
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height']);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'" class="list_img">';
} else {
$img_content = '<img src="'.$board_skin_url.'/img/noimage.gif" width="'.$board['bo_gallery_width'].'" height="'.$board['bo_gallery_height'].'" class="list_img">';
}
echo $img_content;
}
?>
<?php } ?>
~
<?php } ?>
<?php for ($i = 0; $i < count($list); $i++) { ?>
<div class="gallery-item <?php if ($i % 4 == 0) echo 'first-in-row'; ?>">
<?php
// 유튜브 ID 설정
$youtube_url = $list[$i]['wr_link1'];
$youtube_id = str_replace(['http://youtu.be/', 'https://youtu.be/'], '', $youtube_url);
// 썸네일 설정
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
// 이미지 링크 설정
$image_link = $list[$i]['wr_link2'];
// wr_content에서 이미지 링크 추출
preg_match('/<img.+src=[\'"](?P<src>.+?)[\'"].*>/i', $list[$i]['wr_content'], $matches);
$content_image = isset($matches['src']) ? $matches['src'] : '';
if ($content_image && !$thumb['src']) {
$thumb['src'] = $content_image;
}
?>
<div class="gallery_thumb_area">
<?php
if ($youtube_id) {
?>
<a href="<?php echo $list[$i]['href'] ?>">
<img src="https://img.youtube.com/vi/<?php echo $youtube_id ?>/hqdefault.jpg" class="thumbnail" data-youtube-id="<?php echo $youtube_id ?>" style="width: 100%; height: 100%;" />
</a>
<?php
} else if ($image_link) {
?>
<a href="<?php echo $list[$i]['href'] ?>">
<img src="<?php echo $image_link ?>" alt="wr_link2 image" class="thumbnail" style="width: 100%; height: 100%;" />
</a>
<?php
} else if ($thumb['src']) {
?>
<a href="<?php echo $list[$i]['href'] ?>">
<img src="<?php echo $thumb['src'] ?>" alt="<?php echo $thumb['alt'] ?>" class="thumbnail" data-youtube-id="" style="width: 100%; height: 100%;" />
</a>
<?php
} else {
?>
<a href="<?php echo $list[$i]['href'] ?>">
<img src="<?php echo $board_skin_url ?>/img/no_img.png" style="width: 100%; height: 100%;" />
</a>
<?php
}
?>
</div>
//개인적으로 쓰고있는 소스이니 참고하시기바랍니다.