웹마스터 팁

BlogAPI 활용하기

2014.06.29 00:42

맞장

BlogAPI를 이용해서 PHP로 생성된 파일을 자동으로 올리고 싶어서 구글링을 해봤지만 

확실한 답을 찾지 못하여 이거저거 해보다 나름 방법을 찾아서 남깁니다. ^^;

( 이 방법은 온전한 방법은 아닌거 같습니다. ㅡㅡ;;)


저는 특정 프로그램에서 XML파일을 생성 후 그 내용을 게시판에 매일 자동으로 올리고 

싶어서 이용 할려고 찾은 중요부분 입니다.


기본적으로 Xmlrpc.inc 파일과 BlogAPI 애드온 활성화 하셔야 합니다.


BlogAPI
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
require_once('xmlrpc.inc');
$g_blog_url "http://게시판주소/api";
$g_id "아이디";
$g_passwd "패스워드";
$GLOBALS['xmlrpc_internalencoding'] = 'UTF-8';
function metaWeblog_newPost( $blogid$title$content$tagwords$categories)
{
  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"),
          'tagwords'    => new xmlrpcval($tagwords"string"),
          'categories'  => new xmlrpcval($categories"string")
        ), "struct"),
      new xmlrpcval(true, "boolean"// publish
    )
  );
  $response $client->send($f);
}
 
$blogid "아이디"//아이디
$title "제목"//제목 
$content "내용"//내용
$tagwords "cate1,cate2");
$categories  "493"//XE slr카테고리 번호
 
metaWeblog_newPost( $blogid$title$content$tagwords$categories);
?>
 

'tagwords'    => new xmlrpcval($tagwords, "string"),

'categories'  => new xmlrpcval($categories, "string")


이 부분은 원래


'tagwords'    => new xmlrpcval($tagwords, "array"),

'categories'  => new xmlrpcval($categories, "array")


되어야 하는데 배열 변수로 넣어도 되지 않아 삽질을 하다가 BlogAPI 애드온을 변경하는게 좋겠다 싶어서



원본 blogapi.addon.php
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
foreach($info->value->struct->member as $val)
            {
                switch((string)$val->name)
                {
                    case 'title' :
                        $obj->title = (string)$val->value->string;
                        break;
                    case 'description' :
                        $obj->content = (string)$val->value->string;
                        break;
                    case 'categories' :
                        $categories $val->value->array->data->value;
                        $category = (string)$categories[0]->string;
                        if($category && $category_list)
                        {
                            foreach($category_list as $category_srl => $category_info)
                            {
                                if($category_info->title == $category)
                                    $obj->category_srl = $category_srl;
                            }
                        }
                        break;
                    case 'tagwords' :
                        $tags $val->value->array->data->value;
                        foreach($tags as $tag)
                        {
                            $tag_list[] = (string)$tag->string;
                        }
                        if(count($tag_list))
                            $obj->tags = implode(','$tag_list);
                        break;
                }
            }


수정 blogapi.addon.php
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
foreach($info->value->struct->member as $val)
            {
                switch((string)$val->name)
                {
                    case 'title' :
                        $obj->title = (string)$val->value->string;
                        break;
                    case 'description' :
                        $obj->content = (string)$val->value->string;
                        break;
                    case 'categories' :
                        $obj->category_srl = (string)$val->value->string;
                        break;
                    case 'tagwords' :
                        $obj->tags = (string)$val->value->string;
                        break;
                }
            }

이렇게 해서 적용한 게시판은 http://nigahae.com/xe/board_dead 입니다. 

회원가입을 하셔야 보실 수 있으니... 캡쳐 첨부 합니다.


x1.gif


x2.gif


xmlrpc_.zip ( xmlrpc.inc , blogapi.addon.php )

태그 연관 글
  1. [2011/11/08] 묻고답하기 blogApi 짧은 주소 사용 불가시 어떻게 해야 될까요? by 은하항공 *1
  2. [2009/11/03] 웹마스터 팁 XE로 API 처리 완전 정복하기(2) by 라르게덴 *2
  3. [2009/03/04] 묻고답하기 Windows Live Writer를 이용하여 blogAPI 쓰기 by 세고비아 *3
제목 글쓴이 날짜
안양오피 안양출장안마 ⦑출장마사지안내.COM⦒ 안양OP 안양오피 안양오피 koykoyah 2025.02.23
송탄1인샵【오피쓰.COM】송탄마사지 송탄안마 송탄스웨디시 songkangkong767 2025.02.23
부천오피 부천OP ⦑오피쓰주소.COM⦒ 부천휴게텔 부천오피 부천오피 koykoyah 2025.02.23
신도림1인샵【오피쓰주소.COM】신도림 1인샵 신도림1인샵 신도림1인샵 songkangkong767 2025.02.23
해운대오피 해운대오피 ⦑오피사이트.NET⦒ 해운대OP 해운대스파 해운대오피 koykoyah 2025.02.23
동대문마사지【출장마사지안내.COM】동대문 마사지 동대문마사지 동대문마사지 songkangkong767 2025.02.23
강북오피 ⦑오피쓰주소.COM⦒ 강북마사지 강북오피 강북오피 강북OP koykoyah 2025.02.23
역삼1인샵【출장안마사이트.COM】역삼안마 역삼스웨디시 역삼마사지 songkangkong767 2025.02.23
가락오피 ⦑오피쓰.COM⦒ 가락마사지 가락오피 가락오피 가락OP koykoyah 2025.02.23
강남스웨디시【오피쓰.COM】강남마사지 강남1인샵 강남안마 songkangkong767 2025.02.23
군산오피 군산오피 ⦑오피.CLUB⦒ 군산OP 군산스파 군산오피 koykoyah 2025.02.23
건대스웨디시【오피사이트.NET】건대안마 건대마사지 건대1인샵 songkangkong767 2025.02.23
강동오피 ⦑출장마사지안내.COM⦒ 강동오피 강동출장마사지 강동오피 강동OP koykoyah 2025.02.23
목포마사지【출장마사지안내.COM】목포 마사지 목포마사지 목포마사지 songkangkong767 2025.02.23
산본오피 ⦑오피.CLUB⦒ 산본오피 산본출장마사지 산본오피 산본OP koykoyah 2025.02.23
판교마사지【출장안마사이트.COM】판교마사지 판교 마사지 판교마사지 songkangkong767 2025.02.23
신도림오피 신도림출장안마 ⦑오피사이트.NET⦒ 신도림OP 신도림오피 신도림오피 koykoyah 2025.02.23
평촌마사지【오피.CLUB】평촌안마 평촌스웨디시 평촌1인샵 songkangkong767 2025.02.23
청주오피 청주출장안마 ⦑오피사이트.NET⦒ 청주OP 청주오피 청주오피 koykoyah 2025.02.23
신천안마【출장마사지안내.COM】신천 안마 신천안마 신천안마 songkangkong767 2025.02.23