BlogAPI ( Site Open API ) - 훌륭한 글쓰기 기능 ( 버그 수정 ) 정보
BlogAPI ( Site Open API ) - 훌륭한 글쓰기 기능 ( 버그 수정 )
첨부파일
본문
한 3년 전 쯤에 만들었는데 개인적인 문제로 인해 아쉽게도 컴퓨터와 인연을 끊어야했네요.
각설하구요...
그림에서 보시다 시피, 블로그 API 를 통해 그누보드에 편집을 할 수 있게하는 기능입니다.
사실 개개의 회원들은 크게 필요없구요, 자신의 홈페이지에 글을 자주 많이 쓰는 분에게는
이 것을 사용하면 아주 유용하리라 확신합니다.
오랜만에 그누보드를 쓸일이 있어서 해 봤는데, ... 3년이라는 공백 기간이 지나도 큰 문제는 없더라구요. ^^
PS: 프로그램 소스는 사실은 간단하게 작성할 수 있는 건데 어쩌다 보니 복잡하게 되어 있네요.
PS: 참고로 이 프로그램 그누보드, 제로보드, 알지보드, 미니보드 등 여러 게시판 프로그램에 그대로 사용할 수 있습니다.
1. siteapi 디렉토리를 그누보드 루트 디렉토리에 복사를 한다.
index.php 디렉토리와 같은 위치에 있어야해요.
먼저 http://홈페이주소/siteapi/ 로 접속을 해서 혹시 에러메시지나 나오나 한번 보세요. 에러 없으면 통과
2. Window Live Writer 로 그누보드에 접속을 한다.
각 계정별 아이디와 비밀번호를 적용할 수 있나 모르겠습니다. 이전에 할 때, ...
귀찮아서 그냥 관리자로만 되도록 했는지.. 아니면 모두 관리자로 접속이 되는지...
기억이 가물 가물해서...
API 는 Meta Weblog API 를 선택하시고, endpoint (원격 게시 URL) 는 그냥 http://홈페이주소/siteapi/ 로
하면됩니다.
3. view.skin.php 를 약간 수정해 줘야하네요. 3년 전에는 그냥 소스 수정 없이 그럭 저럭 되었는데, ..
지금은 소스 수정안하면 약간 이상하게 나오네요.
2
댓글 전체
상황에 따라서 적당히 소스 패치를 하면 될 것 같습니다. (이미지 클릭하면 새로운 페이지가 뜨는데, 새로운 창이 뜨도록 할려시... 시간이 걸려서...)
너무 성의 없이 프로그램 소스를 공개하는 것 같아서 죄송합니다.
그누보드 화이팅!
error_reporting(E_ALL ^ E_NOTICE); /** @2009 07 06 Turn off "Undefined variable" message n case */
siteapi_datalayer_gnuboard4.php 의1046 번째 줄을 아래와 같이 수정을 해 주세요.
$data['dataid'] = "#BBS.$name.$no";
버그를 못차아서.. 처음 부터 새로 만들다가 도저히 시간이 안되어서 그만 두었다가 다시 ... 버그 잡이 하다가...
애초에 .. 점 하나가 빠져있었다는 것을 발견하게 되었습니다.
이 것을 수정하면, ... 기존에 업데이트 한 내용을 수정할 수 있습니다.
귀찮아서 그냥 Windows Live Writer 에 맞도록 했구요, ... 나중에 범용적으로 쓸 수 있게 해 놓겟습니다. ( 다른 프로그램으로도 다 글을 쓸 수는 있어요. 다만 보여지는게 조금 틀립니다.)
<?
// 파일 출력
for ($i=0; $i<=count($view[file]); $i++) {
// 송재호
if ($view[file][$i][view]) {
if ( strpos($view[file][$i][view], "WindowsLiveWriter") ) {
$livewriter=true;
}
else echo $view[file][$i][view] . "<p>";
}
}
// 송재호
if ( $livewriter ) {
$view[content] = str_replace("onclick='image_window(this)'", "", $view[content]);
$view[content] = str_replace("style='cursor:pointer;'", "", $view[content]);
$view[content] = str_replace("name='target_resize_image[]'", "", $view[content]);
$view[content] = preg_replace("/<a[^>]*><img/", "<img", $view[content]);
}
?>