외부링크 이미지 갤러리 리스트 썸네일에 뜨게 하는 법

외부링크 이미지 갤러리 리스트 썸네일에 뜨게 하는 법

QA

외부링크 이미지 갤러리 리스트 썸네일에 뜨게 하는 법

본문

게시글 이것저것 찾아봤는데 자꾸만 else 구문 오류가 떠서 글 써봅니다 ㅠㅠ

현재 코드는 이렇습니다

 


<div class="gall_con">
        <?php for ($i=0; $i<count($list); $i++) {  
            $thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'],$gall_w,$gall_h,false,true);
            if($thumb['src']) 
            $img_content =  "url('".$thumb['src']."')";
            else if($list[$i]['wr_url'])
                    $img_content =  "url('".$list[$i]['wr_url']."') center no-repeat;background-size:cover";
            else $img_content="none";  
        ?><div class="theme-box gall_box" style="width:<?=$gall_w?>px;height:<?=$gall_h?>px;<?if($img_content!='none'){?>background-image:<?=$img_content?>;<?}?>">
 

 

 

+

https://extrashot.tistory.com/34

해당 게시글에서 배포중인 아보카도 갤러리형 썸네일2 스킨입니다... 

 

dhtml 에디터로 <img src=""> 태그 사용하여 첨부한 외부링크 이미지가 리스트 보기에서 썸네일로 나오게 하거나,

3554722618_1629321100.0465.png

혹은 위 사진의 write.skin.php 페이지에서 파일 선택이 아닌 외부링크 url을 입력하여 이미지를 첨부할 수 있도록 코드를 수정하는 방법이 있을까요?

이 질문에 댓글 쓰기 :

답변 2

 

이미지 썸네일을 본인이 등록하려면 여분필드에 이미지주소를 입력하여 그걸 list 로 보내는 방법이 가장 좋습니다.

 

write.skin.php 의 적당한 곳에 wr_1 이라는 여분필드를 만들어 주세요.

 


<input type=text class="frm_input full_input required" name=wr_1 value="<?php echo $write['wr_1']; ?>" placeholder=썸네일주소>

 

예제에서는 그누의 기본 갤러리로 설명할게요. pc 에서 list.skin.php 를 살펴보면 아래와 같은 소스가 있습니다.

 


<a href="<?php echo $list[$i]['href'] ?>">
<?php
if ($list[$i]['is_notice']) { // 공지사항  ?>
    <span class="is_notice" style="<?php echo $line_height_style; ?>">공지</span>
<?php } else {
    $thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
    if($thumb['src']) {
        $img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" >';
    } else {
        $img_content = '<span class="no_image" style="'.$line_height_style.'">no image</span>';
    }
    echo run_replace('thumb_image_tag', $img_content, $thumb);
}
?>
</a>

 

그걸 아래처럼 바꿔줍니다.

 


<a href="<?php echo $list[$i]['href'] ?>">
<?php
if ($list[$i]['is_notice']) { // 공지사항  ?>
    <img onerror=style.display='none' src=<?php echo $list[$i]['wr_1']; ?>>;
    <span class="is_notice" style="<?php echo $line_height_style; ?>">공지</span>
<?php } else {
    echo "<img onerror=style.display='none' src=".$list[$i]['wr_1'].">";
    $thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
    if($thumb['src']) {
        $img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" >';
    } else {
        $img_content = '<span class="no_image" style="'.$line_height_style.'">no image</span>';
    }
    echo run_replace('thumb_image_tag', $img_content, $thumb);
}
?>
</a>

 

wr_1 을 이미지주소로 받아 이미지태그를 걸고 온에러가 터지면 즉 wr_1 이 없거나 주소가 이상한 이미지라면 그 이미지가 없어지면서 예전 설정대로 보여지는 식입니다. 

알려주신 방법대로 여분필드를 만들었습니다 ㅠㅠ 

https://cdn.discordapp.com/attachments/667593789610917897/877783048052146247/3554722618_1629349707.png

요렇게 잘 나오네요....

다만 리스트 썸네일로 불러오는 것에 대한 구조는 대충 이해했지만 위 스킨에서 코드 적용을 어떻게 시켜야할지 감이 안 오네요.......



기존



<?php for ($i=0; $i<count($list); $i++) {  
            $thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'],$gall_w,$gall_h,false,true);
            if($thumb['src']) 
            $img_content =  "url('".$thumb['src']."')"; 
            else if($list[$i]['wr_url'])
                    $img_content =  "url('".$list[$i]['wr_url']."') center no-repeat;background-size:cover";
            else $img_content="none";  
        ?><div class="theme-box gall_box" style="width:<?=$gall_w?>px;height:<?=$gall_h?>px;<?if($img_content!='none'){?>background-image:<?=$img_content?>;<?}?>">





코드의 구조가 비슷하면서도 애매하게 다르다보니 어디에 어떤 값을 수정해야할지 어렵습니다(ㅠㅠ)



임의로 



<?php for ($i=0; $i<count($list); $i++) {  
            echo "<img onerror=style.display='none' src=".$list[$i]['wr_1'].">"; 
            $thumb = get_list_thumbnail($bo_table, $list[$i]['wr_id'],$gall_w,$gall_h,false,true);
            if($thumb['src']) 
            $img_content =  "url('".$thumb['src']."')"; 
            else if($list[$i]['wr_url'])
                    $img_content =  "url('".$list[$i]['wr_url']."') center no-repeat;background-size:cover";
            else $img_content="none";  
        ?><div class="theme-box gall_box" style="width:<?=$gall_w?>px;height:<?=$gall_h?>px;<?if($img_content!='none'){?>background-image:<?=$img_content?>;<?}?>">





이렇게 두번째줄에 값을 추가하면 이미지는 불러와지는 대신


https://cdn.discordapp.com/attachments/667593789610917897/877782973469057064/thumb-thumb-3554722618_1629349942.png


이런 식으로 이미지가 뚫고 나오는 데다가 썸네일처럼 일정한 크기로 정렬이 안 되네요...

어디에 삽입해야할까요? ㅠㅠ

죄송합니다. 티스토리에서 배포중인 갤러리 소스는 현재의 그누 최신 버전과 호환되지 않네요.

현재 그누 몇 버전을 쓰시는지요.

답변을 작성하시기 전에 로그인 해주세요.
전체 41
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT