레이아웃에서 아약스로 문서 불러오는 예제 어디 못 보셨나요 ㅠ
<script> jQuery(function ($) { $('#tab_planet').click(function(){ $('#planet').load('{$tpl_path}wdg_planet.html #wdg_asdf'); alert('claick'); }); }); </script>
레이아웃에 위와 같은 방법으로 위젯 파일을 불러올려고 했습니다만;;
.get() 함수도 마찬가지였습니다만..
크롬 개발자도구에서는 위와 같은 오류가 떴습니다.
경로에 plugin 이라는 건 안 넣어줬는데 .get()이나 .load()나 모두 plugin 이라는 경로가 추가되었고
403 에러가 뜨더군요.
동작은 잘 됩니다.
http://eond.com/phpinfo.php 파일을 불러오는 경우에는 제대로 불어왔습니다만,
레이아웃 폴더 아래 있는 문서를 ajax로 불러올 땐 403 에러가 뜨더군요..
어떻게 해결할 수 있는 방법이 없을까요??
왠지 보안상 퍼미션 때문인가 원래 xe 폴더 아래에 있는 html 문서는 따로 못 불러오게 되어있는 거..
그게 문제일 것 같은데 ㅠ_ㅠ
방법 없을까용?
그래서.. html 확장자를 떼고 불러와서
<img class="zbxe_widget_output" widget="planet_document" skin="eond_on" colorset="default" list_count="20" allow_repetition="Y" show_author_name="Y" show_number_of_comments="N" widget_sequence="1602100427" widget_cache="60">
을 출력시켜줘봤더니, 로드는 되는데 해석을 못하네요 ㅠㅠㅠ
html은 403, php는 500, 확장자 없이는 불러는 와져도 해석 불가 ㅠㅠ
정리하자면
http://eond.com/phpinfo.php
이건 불러와지거든요..
http://eond.com/layouts/eond_on/plugin/wdg_planet.html
그런데 이건 퍼미션 관련 때문인지 못 불러와져요.
저게 외부에서도 볼 수 있으면 불러와질 수가 있는데
ajax로는 저걸 load() 함수를 써서 못 불러와지더라구요. 아마 XE 자체 보안 때문에?ㅠ
그럼 레이아웃에서는 ajxs 함수를 못 사용하는 걸까요?
ajax를 xe 내부 퍼미션 문제 때문에 html 문서를 가져오지 못하는 경우에는 제이쿼리 아약스 함수를 못 사용하는 거 같던데, 그럼 방법이 없는 걸까요?;
생각해볼 수 있는게 내부 문서를 따로 불러오는게 아니라, 불러온 문서 내부의 해당 레이어만을 따로 로드하고 있지 않다가 클릭하면 해당 클래스의 레이어를 로드하는 방법은 없겠죠?;;
<div class="wdg_planet tab-pane" id="planet"> <include target="./plugin/wdg_planet.html" /> </div>
이렇게 include 문으로 구성한 뒤에.. 처음에는 이 인클루드 문을 작동하지 않다가..
클릭하면 인클루드문이 동작하도록 하는 방법?;;
xe 레이아웃 ajax로 찾아보곤 있는데 잘 모르겠네요 ㅠ
http://blog.naver.com/PostView.nhn?blogId=maninblu&logNo=90172261141
https://xe1.xpressengine.com/forum/22936700
http://chongmoa.com/5077
왜냐면 xe 화면은 템플릿 언어를 해석하고 html파일로 저장한 후 그것을 읽어서 보여주는것으로 알고 있습니다.
ajax 로 뭔가를 부르려면 템플릿 언어가 다 해석되고 저장된 그 html 을 불러야될 듯 합니다.
제가 잘 몰라서 아닐수도 있어요 ㅋㅋ