증상은 관리자로 로그인시 정상적으로 팝업창이 작동하여 유튜브 영상이 실행되구요.
비회원인 상태에서 클릭시 해당 유튜브 주소로 이동해서 영상이 실행됩니다.
(게시판 권한은 글쓰기,답변,댓글,업로드 권한만 10입니다.)
2시간 가까이 소스를 뒤져봐도 왜 그런지 이해가 되지 않습니다.
혹시 의심해볼만한 방법이 있는지 고수분들의 고견을 여쭙습니다.
사용한 테마 : https://sir.kr/g5_theme/4395
참고한 스킨 : https://sir.kr/g5_skin/13115
문제가 발생된 페이지 : http://msfloor.cafe24.com/bbs/board.php?bo_table=movie
사용 스킨의 리스트 파일중 일부입니다.
상단에 css와 js파일을 불러왔습니다.
add_stylesheet('<link rel="stylesheet" href="'.G5_THEME_CSS_URL.'/magnific-popup.css">', 0);
add_javascript('<script src="'.G5_THEME_JS_URL.'/jquery.magnific-popup.min.js"></script>', 0);
그리고 유튜브 주소를 이용해서 썸네일을 추출했습니다.
<ul id="gall_ul">
<?php
for ($i=0; $i<count($list); $i++) {
$thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'], $thumb_width, $thumb_height, false, true);
if($thumb['src']) {
$img = $thumb['src'];
} else {
$img = G5_THEME_IMG_URL.'/noimage.png';
$thumb['alt'] = '이미지가 없습니다.';
}
$img_content = '<img src="'.$img.'" alt="'.$thumb['alt'].'" >';
?>
<li class="gall_li">
<a href="<?php echo ($is_admin ? $list[$i]['href'] : $list[$i]['wr_link1']); ?>" class="gall_img <?php echo ($is_admin ? '' : 'popup-youtube'); ?>"> // 여기서 팝업 플레이 스크립트를 호출합니다.
<?php
// 썸네일. (유투브 코드로 썸네일처리)
$thumbsrc = '';
$youtube_key = substr($list[$i]['wr_link1'],-11,11);
$thumbsrc = 'https://img.youtube.com/vi/'.$youtube_key.'/mqdefault.jpg'; // 썸네일을 추출하고
if($thumbsrc) {
$img_content = '<img src="'.$board_skin_url.'/img/youtube.png" style="position:absolute; width:30px; margin:15px 20px;"><img src="'.$thumbsrc.'" alt="'.$list[$i]['subject'].'" width="'.$thumb_width.'" height="'.$thumb_height.'">'; // 썸네일을 불러올때 동영상 아이콘을 absolute로 함께 불러옵니다.
} else {
$img_content = '<span style="width:'.$thumb_width.'px;height:'.$thumb_height.'px">no image</span>';
}
echo $img_content;
?>
</a>
그리고 하단에 해당 JQuery 관련 스크립트를 추가했습니다.
<script>
<!--
$(document).ready(function() {
$('.popup-youtube').magnificPopup({
//disableOn: 700,
type: 'iframe',
mainClass: 'mfp-fade',
removalDelay: 160,
preloader: false,
fixedContentPos: false
});
});
//-->
</script>
답변 2개 / 댓글 3개
admin 에 접속이 안되서 확인이 어렵습니다.
<a href="<?php echo ($is_admin ? $list[$i]['href'] : $list[$i]['wr_link1']); ?>" class="gall_img <?php echo ($is_admin ? '' : 'popup-youtube'); ?>"> // 여기서 팝업 플레이 스크립트를 호출합니다.
아마 이부분 차이아닐까 싶습니다.
답변에 대한 댓글 2개
제가 매우 단순하고 바보같은 실수를 했었네요.
간단하게 해결했습니다.
호출 스크립트를
[code]
<?php if ($is_checkbox) { ?> // 리스트 정리 권한이 있는 관리자 영역 ㅠㅠ
[/code]
여기 아래에 넣어버려서 관리자만 정상적으로 팝업 플레이가 되는 증상이었습니다.
kakao lemontree4050으로 친추주시면 한번 보겠습니다.
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
[code]
<a href="<?php echo $list[$i]['href']; ?>" class="gall_img"> // 스크립트에서 호출되는 클래스도 동일하게 수정
[/code]
이렇게 수정해봤는데 마찬가지였습니다.