묻고답하기
외부게시판 등록이 안됩니다. ㅡㅜ
2015.02.20 23:34
1. blogapi 애드온을 체크해서 실행을 시켜두었습니다.
2. xmlrpc.inc 파일을 같은 폴더안에 두었습니다.
3. xe 버젼은 1.7.11 입니다.
아래의 내용을 .php파일로 저장해서 실행을 해보았는데.. 게시판에 등록이 되지를 않습니다.
1.5아래버젼에서는 잘 되었다고 하는데.
혹시나 blogapi 애드온이 실행되지 않는게 아닌가해서, windows live writer를 실행해서 게시판에 글을 적어보니 잘 되고 있습니다. 즉, blogapi 애드온은 이상이 없다는 이야기인데..
그렇다면 아래 .php파일 코딩이 잘못되었다는건데..
크게 잘못된 부분은 없다고 봐지는데..도움을 부탁드립니다.
--------------------------------------------
<?php
//requires xmlrpc.inc from http://phpxmlrpc.sourceforge.net/
//!!중요!! xmlrpc파일이 필요함, 위 주소로 가서 zip파일을 다운로드, 압축해제후 lib폴더에 있는 xmlrpc.inc파일을 넣어주세요.
//아 그리고, xe에서 애드온 메뉴에서 블로그api 기능의 기본설정이 off되어있는데 그걸 on 해주셔야 작동되겠죠?
require_once('xmlrpc.inc');
$g_blog_url = "기본주소/xe/모듈명/api";
$g_id = "xe아이디(기본으로 관리자 admin으로)";
$g_passwd = "비번";
$GLOBALS['xmlrpc_internalencoding'] = 'UTF-8';
function metaWeblog_newPost( $blogid, $title, $content)
{
global $g_id;
global $g_passwd;
global $g_blog_url;
$client = new xmlrpc_client( "{$g_blog_url}");
$f = new xmlrpcmsg("metaWeblog.newPost", // metaWeblog.newPost method
array(
new xmlrpcval("{$blogid}", "string"), // blogid.
new xmlrpcval($g_id, "string"), // user ID.
new xmlrpcval($g_passwd, "string"), // password
new xmlrpcval( // body
array(
'title' => new xmlrpcval($title, "string"),
'description' => new xmlrpcval($content, "string"),
), "struct"),
new xmlrpcval(true, "boolean") // publish
)
);
$f->request_charset_encoding = 'UTF-8';
$response = $client->send($f);
echo $blogid.$title.$content;
}
$blogid="xe아이디(기본으로, admin으로 설정하시길 권장해요. 관리자일 경우 admin)";
$title="제목";
$content="내용";
metaWeblog_newPost( $blogid, $title, $content);
?>
-----------------------------------------------------------