최근글에서 댓글+댓글폼 뽑아내기 > 그누4 스킨

그누4 스킨

스킨의 저작권은 해당 스킨 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다.
스킨 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y
그누보드와 관련이 있지만 스킨과 빌더가 아니면 플러그인 게시판에 올려주세요.

최근글에서 댓글+댓글폼 뽑아내기 정보

최신글 최근글에서 댓글+댓글폼 뽑아내기

첨부파일

to_bbs(2).zip (7.3K) 132회 다운로드 2011-04-29 18:41:56

본문

여전히 허접하지만 나름 손을 보고 다시 올렸습니다.
http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=138402
2013.1.2

-------------------------------
소스 수정 하나 하고 추가 하나 했습니다.

수정한 소스 :
<? if ($list[$i]['comment_cnt']) { ?>
<iframe width="100%" id="the_iframe" onload="resizeIfr(this, 30);" name="ifrm_comment" id="ifrm_comment" allowTransparency="true"
  src='<?=$g4[bbs_path]?>/set_cmt_main.php?bo_table=<?=$bo_table?>&wr_id=<?=$list[$i][wr_id]?>&set=main_profile'
  scrolling="NO" marginheight="0" marginwidth="0" frameborder="0" height="1"></iframe>
<? } ?>

<? if ($list[$i]['comment_cnt']) { ?>
<iframe width="100%" name="ifrm_comment" id="ifrm_comment" allowTransparency="true"
  src='<?=$g4[bbs_path]?>/set_cmt_main.php?bo_table=<?=$bo_table?>&wr_id=<?=$list[$i][wr_id]?>&set=main_profile'
  scrolling="NO" marginheight="0" marginwidth="0" frameborder="0" height="1"></iframe>
<? } ?>
로 수정했습니다.

추가한 소스는 본문 맨밑에 있습니다. 아이프레임 자동 리사이즈하는 스크립트 소스입니다.

2013.1.2

------------------------------------

최근 작업중인 홈페이지에서 만들어봤습니다. 요 아래 올린 허접쇼핑몰에서도 써먹은 팁입니다.
포럼류의 글을 최근글로 뽑아낼 때 유용하지 않을까 합니다.

개요 : 최근글에 댓글과 댓글폼까지 뽑아냅니다. 누군가 내 글에 댓글을 달면 최근글에 그 댓글이 같이 출력되며 본문글쓴이게만 [..님의 답글달기]라는 링크가 보입니다.
현재 소스에는 댓글을 한개만 뽑아내게 되어 있습니다. 댓글갯수는 소스상에서 임의로 수정가능합니다. 단, 본문글쓴이가 단 답댓글은 출력갯수에 포함되지 않습니다. 만약 댓글갯수를 3개 뽑아낸다고 할 경우, 원댓글이 3개 뽑아지고 본문글쓴이가 그에 답한 답댓글은 그 아래 달립니다.


첨부한 압축파일을 풀면

set_cmt_main.php
write_set_comment_update.php
style.urms.css

세가지 파일이 나옵니다. php는 둘다 bbs 폴더에 올리고 css는 기존 style.css 있는 곳에 올리고 head.sub.php에 아래 소스를 추가합니다.
<link rel="stylesheet" href="<?=$g4['path']?>/style.urms.css" type="text/css">



그리고 최근글 스킨안에


<? if ($list[$i]['comment_cnt']) { ?>
<iframe width="100%" name="ifrm_comment" id="ifrm_comment" allowTransparency="true"
  src='<?=$g4[bbs_path]?>/set_cmt_main.php?bo_table=<?=$bo_table?>&wr_id=<?=$list[$i][wr_id]?>&set=main_profile'
  scrolling="NO" marginheight="0" marginwidth="0" frameborder="0" height="1"></iframe>
<? } ?>



이 소스를 넣어주면 됩니다. (for 문 안에 적용)

최근글 스킨안에서 set_cmt_main.php를 아이프레임으로 불러오는 거죠.




- 설명이 좀 어려울 수도 있겠네요. 이 팁을 활용한 최근글 스킨까지 조만간 올리겠습니다. 제가 워낙 번잡한 기능들을 좋아하다보니 다른 분들에게 적용이 무의미할 거 같아 올리기가 좀 그렇기 합니다만...^^;

- 링크걸기가 좀 쑥스러웠는데 참고삼아 팁을 적용한 사이트를 링크걸겠습니다. 메인의 '이야기마당'이 이 팁을 적용한 최근글입니다.

- 근데 제가 궁금한게 지금 아이프레임 소스가 자동으로 길이가 조절되는게 맞는가요? 제가 만든 홈페이지에서는 익스, 크롬, 파이어폭스까지 다 되긴 하는데 이게 저 소스만으로 되는 건지, 또 다른 소스를 적용해서인지 기억이 나지 않아서 말이죠-_-;; 이전 홈페이지에 썼던 팁들을 그냥 복사해서 쓰다보니....



///////////////아이프레임 자동 리사이즈 팁/////////////////////

http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=6860&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%EC%95%84%EC%9D%B4%ED%94%84%EB%A0%88%EC%9E%84
(참조팁입니다)

아래 스크립트소스를 tail.php 등에 넣어줍니다.


<script type="text/javascript">
// IFrame script Ver 1.0

//여러개의 IFrame는 다음과 같이 사용합니다.
// 예 : ["myframe1", "myframe2"] or ["myframe"] or [] for none:
var iframeids=["ifrm_comment"]
var iframehide="yes"

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0

function resizeCaller() {
var dyniframe=new Array()

for (i=0; i<iframeids.length; i++) {
if (document.getElementById)
resizeIframe(iframeids[i])

if ((document.all || document.getElementById) && iframehide=="no") {
var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
tempobj.style.display="block"
}
}
}

function resizeIframe(frameid) {
var currentfr=document.getElementById(frameid)

if (currentfr && !window.opera){
currentfr.style.display="block"

if (currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight)
currentfr.height = currentfr.contentDocument.body.offsetHeight+FFextraHeight;
else if (currentfr.Document && currentfr.Document.body.scrollHeight)
currentfr.height = currentfr.Document.body.scrollHeight;

if (currentfr.addEventListener)
currentfr.addEventListener("load", readjustIframe, false)
else if (currentfr.attachEvent){
currentfr.detachEvent("onload", readjustIframe)
currentfr.attachEvent("onload", readjustIframe)
}
}
}

function readjustIframe(loadevt) {
var crossevt=(window.event)? event : loadevt
var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement

if (iframeroot)
resizeIframe(iframeroot.id);
}

function loadintoIframe(iframeid, url) {
if (document.getElementById)
document.getElementById(iframeid).src=url
}

if (window.addEventListener)
window.addEventListener("load", resizeCaller, false)
else if (window.attachEvent)
window.attachEvent("onload", resizeCaller)
else
window.onload=resizeCaller
</script>
추천
9

댓글 전체

전체 5,853 |RSS
그누4 스킨 내용 검색

회원로그인

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