웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
XE를 홈페이지 루트에 설치하여 BGM 설치가 불가능할 때...
2011.05.29 14:51
XE는 기본적으로 홈페이지주소/xe/에 설치됩니다. 이 경우 홈에 접속할때 XE가 바로 보이지 않지요. 때문에 XE가 바로 보이게 할려는 의도에서 XE를 홈페이지의 루트에 설치하는 경우가 있습니다. 이 팁은 XE를 홈페이지 루트에 설치하여 frameset을 이용한 BGM Player 구동이 불가능할 때 사용하시기 바랍니다. 애드온 프로그램도 있지만 그것을 사용하니 홈페이지에 접속시 너무 느려 사용 포기했음. 1. 먼저 홈페이지에서 BGM을 구동할 index.html 파일을 아래의 형식으로 만들어서 UTF-8로 저장하여 홈의 루트에 main 폴더를 만든후 이 폴더에 올립니다. <? if($_GET["uri"]) $uri = $_GET["uri"]; else $uri = "/"; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <html xml:lang="ko" lang="ko" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-type" content="text/html;charset=UTF-8" /> <title>홈페이지 타이틀</title> <!-- 홈페이지 타이틀은 자신의 홈에 맞게 수정하세요.--> </head> <frameset rows="30px, *" frameborder="0" framespacing="0"><!-- 30px은 홈의 BGM Player 높이에 맞게 수정하세요. --> <frame id="BGM" name="BGM" src="BGM Player주소" frameborder="0" marginwidth="0" marginheight="0" noresize="noresize" scrolling="no" /><!-- BGM Player 주소는 자신의 홈에 맞게 수정하세요. --> <frame id="XE" name="XE" src="<?=$uri?>" frameborder="0" marginwidth="0" marginheight="0" /> </frameset> </html> 2. 홈페이지에 사용중인 레이아웃 파일(layout.html)을 에디트로 열어서 레이아웃 파일에서 제일먼저 로드되는 js파일을 열어 아래 소스를 js파일 상단에 집어 넣습니다. 제 홈의 layout.html의 js파일 로드 예시) <!--%import("js/global.js")--> <!--%import("js/jquery.droppy.js")--> <!--%import("js/modal_window.js")--> <!--%import("js/page-scroller.js")--> 총 4개의 js파일이 로드 되네요. 이 중에서 제일 위의 global.js가 해당됩니다. 해당되는 파일에 아래소스를 넣고 저장후 업로드. if(top.frames.length == 0) { var fullUrl = new String(window.location); var udata = fullUrl.replace("http://", ""); var data = udata.split("/"); if(udata == location.host + "/") uri = "/main"; else uri = "/main/?uri="; for(i = 1; i < data.length; i++) { uri += "/" + data[i]; } if((fullUrl.indexOf("&act") == -1) && (fullUrl.indexOf("&search") == -1) && (fullUrl.indexOf("admin") == -1)) { window.location.href = uri; } } 그런 다음 레이아웃 파일의 <!--%import("js/global.js")--> 이 코드를 <load target="js/global.js" index="-1" /> 로 수정하여 있던 곳으로 올리면 끝. 이제 홈페이지를 다시 고침해 보세요. BGM frame도, XE frame도 모두 정상적으로 보여집니다. 클릭시마다 BGM frame이 1개씩 늘어나는 현상도 없습니다.
BGM Player와 위젯스킨, 애드온이 개발자포럼 > 프로그램 자료실에 올려져 있습니다.
이 팁을 적용하지 말고 이 팁이 적용된 프로그램을 받아서 사용하세요. 아래 링크를 따라가세요.
댓글 6
-
우냠냠냠
2012.12.29 19:05
-
꿈틀잉
2013.02.12 14:21
좋은팁입니다.^^
-
Firstlove
2013.02.12 14:54
BGM Player와 위젯스킨, 애드온 프로그램이 개발자포럼 ---> 프로그램 자료실에 올려져 있습니다.
위 팁을 적용하지 말고 위 팁이 적용된 프로그램을 받아서 사용하세요. 아래 링크를 따라가세요.
-
꿈틀잉
2013.02.13 13:35
적용해서 잘쓰고 있는데요...
도메인 접속시
http://aaa.com/frameset.html?uri=/
이렇게 뒤에 자동으로 붙어버리는데 안나오게 가능한가요?
-
Firstlove
2013.02.14 21:21
홈페이지 루트에 main이라는 폴더를 만든 후 그 폴더에다 frameset.html 파일을 넣은 후 index.html로 파일명을 바꿉니다. 다음은 레이아웃 파일에서 로드되는 js파일에 아래 팁을 적용하면 홈페이지 주소가 http://도메인/main/으로 고정됩니다. /main/ 이것까지 안나오게 하는 방법은 없습니다. if(top.frames.length == 0) { var fullUrl = new String(window.location); var udata = fullUrl.replace("http://", ""); var data = udata.split("/"); if(udata == location.host + "/") uri = "/main"; else uri = "/main/?uri="; for(i = 1; i < data.length; i++) { uri += "/" + data[i]; } if((fullUrl.indexOf("&act") == -1) && (fullUrl.indexOf("&search") == -1) && (fullUrl.indexOf("admin") == -1)) { window.location.href = uri; } }
-
Firstlove
2013.02.27 13:15
개발자포럼 > 프로그램 자료실에 5대 웹 브라우저를 지원하는 BGM Player - XE 위젯 버젼 V1.6 를 올려 두었습니다.
본문의 팁을 적용하시려는 분들은 아래 링크를 따라가셔서 본문의 팁이 적용된 BGM 프로그램을 받아서 사용하세요.
이런 어마어마한팁에 댓글이없다니..