워드프레스와 kboard를 이용해서 홈페이지를 제작하고 있는 많은 사람중에 한사람입니다...
글을 저장할때와 지울때
location.href='/insurance/%ec%9e%90%ec%a3%bc%ed%95%98%eb%8a%94-%ec%a7%88%eb%ac%b8/?uid=8&mod=페이지';
잘 아시겠지만 페이지 부분에 document나 list 가 뜨면서 페이지가 올바르게 이동이 되지 않는 현상이 발생하여 문의를 드리게 되었습니다.
※ kboardbuilder.class 에는 손을 대지 않았습니다.
라고 문의를 드렸습니다. 헌데 kboardbuilder.class에 있는 스크립트로 대화상자를 띠우는 구문을 edit.php에 넣고 테스트를 해본결과
잘 되는걸로보면 kboardbuilder.class에 script가 안먹는거 같습니다.. 여러가지 시도도 해보았으니 도통 해결되지 않아 도움을 요청합니다 (__)
※wp_redirect와 header, javascript함수를 밖에 따로 빼서 불러오는 방법을 써봤지만 페이지가 아예 이동이 되지 않네요
질문이 이해가 가질 않습니다.
KBoardBuilder.class.php 파일에서 스크립트 출력을 막은건 아닙니다.
이미 여러줄에서 alert 스크립트를 출력하고 있고 또 스킨 파일은 단순히 include를 통해서 페이지에 출력하고 있습니다.
페이지 이동도 location.href 스크립트를 출력해서 이동하고 있습니다.
페이지 이동 주소가 문제인가요?
$next_page_url = $url->set('uid', $execute_uid)->set('mod', 'document')->toString();
die("<script>location.href='".apply_filters('kboard_after_executing_url', $next_page_url, $execute_uid, $this->board_id)."';</script>");
이 부분입니다.
직접 주소를 입력해주셔도 가능하고 http://www.cosmosfarm.com/products/kboard/hooks 이쪽 페이지를 보시면 kboard_after_executing_url 필터가 있습니다.
필터를 사용해서 주소를 바꿀 수 있습니다 :)
javascript의 경우 상위에서 에러가 일어나면 하위 소스들은 실행이 안되는 경우가 있습니다.
아마도 테마나 외부적인 요인으로 인해 javascript 에러가 일어나지 않았을까 추측해 봅니다.
예)
자바스크립트 에러가 일어남 ( 테마나 기타 플러그인 등등 외부적인 요소에 의해)
location.href = 'url';
위와 같은 상황이면 당연히 location.href 가 실행이 안되겠죠.
먼저 location.href가 실행되는 페이지에서 javascript 에러가 있는지를 꼼꼼히 살펴보세요.