Skip to content
조회 수 12760 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

MetaWeblog API in PHP

Blogger API Tutorial: How To Get Your Blog’s Posts



Your Blog’s ID

Each blog has its own ID from which we can get the posts feed. To get your blog’s id simply open up your dashboard and click “New Post”, your blog id will then be visible in the URL.

blogger blog id

Blog ID in URL

How to Get The Posts With PHP

The URL for a blog’s feed has the following format.

http://www.blogger.com/feeds/blogID/posts/default

If you take this URL, put your blog’s id and paste navigate to it in your browser, you will see that you get an XML response with your posts.

This XML response has an <entry> tag for each one the posts. Inside the entry tag there are other tags such as <title>,<content>, <published> and more. These are the tags we will refer to in our PHP script.

How To Read The Response

Here is a simple PHP script you can use to display your posts’ title, content and published date. If you want to learn about reading XML files in detail check out my post on this subject.
How To Read an XML File From a URL

<?php
$blogID='xxxxxxxxxxx';
$requestURL="http://www.blogger.com/feeds/{$blogID}/posts/default";
$xml=simplexml_load_file($requestURL);
?>
<html>
<body>
<?php
foreach($xml->entry as $post)
{
echo '<div>';
echo '<h2>'.$post->title.'</h2>'; // post title
echo '<p>Published: '.$post->published.'</p>'; // date published
echo '<p>'.$post->content.'</p>'; // post content
echo '</div>';
}
?>
</body>



Implementation of the MetaWeblog API http://www.xmlrpc.com/metaWeblogApi in PHP.

<?php
/**
 * Skeleton file for MetaWeblog API http://www.xmlrpc.com/metaWeblogApi in PHP
 * Requires Keith Deven's XML-RPC Library http://keithdevens.com/software/xmlrpc and store it as xmlrpc.php in the same folder
 * Written by Daniel Lorch, based heavily on Keith Deven's examples on the Blogger API.
 */

require_once dirname(__FILE__) . '/xmlrpc.php';

function metaWeblog_newPost($params) {
  list($blogid, $username, $password, $struct, $publish) = $params;
  $title = $struct['title'];
  $description = $struct['description'];


  // YOUR CODE:
  $post_id = 0; // id of the post you just created


  XMLRPC_response(XMLRPC_prepare((string)$post_id), WEBLOG_XMLRPC_USERAGENT);
}

function metaWeblog_editPost($params) {
  list($postid, $username, $password, $struct, $publish) = $params;


  // YOUR CODE:
  $result = false; // whether or not the action succeeded


  XMLRPC_response(XMLRPC_prepare((boolean)$result), WEBLOG_XMLRPC_USERAGENT);
}

function metaWeblog_getPost($params) {
  list($postid, $username, $password) = $params;
  $post = array();


  // YOUR CODE:
  $post['userId'] = '1';
  $post['dateCreated'] = XMLRPC_convert_timestamp_to_iso8601(time());
  $post['title'] = 'Replace me';
  $post['content'] = 'Replace me, too';
  $post['postid'] = '1';


  XMLRPC_response(XMLRPC_prepare($post), WEBLOG_XMLRPC_USERAGENT);
}

function XMLRPC_method_not_found($methodName) {
  XMLRPC_error("2", "The method you requested, '$methodName', was not found.", WEBLOG_XMLRPC_USERAGENT);
}

$xmlrpc_methods = array(
  'metaWeblog.newPost'  => 'metaWeblog_newPost',
  'metaWeblog.editPost' => 'metaWeblog_editPost',
  'metaWeblog.getPost'  => 'metaWeblog_getPost'
);

$xmlrpc_request = XMLRPC_parse($HTTP_RAW_POST_DATA);
$methodName = XMLRPC_getMethodName($xmlrpc_request);
$params = XMLRPC_getParams($xmlrpc_request);

if(!isset($xmlrpc_methods[$methodName])) {
  XMLRPC_method_not_found($methodName);
} else {
  $xmlrpc_methods[$methodName]($params);
}
?>






로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
597 프로세스 CKAgent.exe npkcmsvc.exe nvsvc32.exe 1 2011.02.07 13219
596 컴퓨터잡담 AHK & my Address of Pointer and my Offset 2011.10.11 13183
595 컴퓨터잡담 MySQL을 위한 하드웨어 최적화(What one can and should optimize) 2 2010.04.06 13123
594 Server mysql 실행이 안되거나 테이블(사용중) 손상이 잃어난 경우 2 2012.07.14 13083
593 컴퓨터잡담 safeout.exe 프로세스 삭제하기 3 2012.03.12 13032
592 WindowsTip 윈도우 레지스트리 설정 - 인터넷 익스플로러 4 2013.02.28 12950
591 [Docs]스프레드시트 Google SpeadSheet 조건에 맞는 데이터만 참조하여 가져오기(importrange, Query) 1 file 2016.08.06 12948
590 Server php) curl_setopt의 옵션 1 10 2013.04.02 12938
589 컴퓨터잡담 [아파치] Disabled use of AcceptEx() winsock2 API 라고 나오는 경우 2 2010.11.28 12901
588 HTMLPHPMSQL 자바스크립트 명령어 2018.01.31 12894
587 컴퓨터잡담 맥변조 현상에 따른 조치방법(arp -a 실시간 감시) 2 20 file 2011.12.22 12764
» 컴퓨터잡담 Implementation of the MetaWeblog API http://www.xmlrpc.com/metaWeblogApi in php 2010.07.12 12760
585 컴퓨터잡담 무서운 후킹프로세스들~ 방어방법 1 2 2010.02.20 12737
584 AutoHotKey 부팅완료 메시지 프로그램 file 2011.12.17 12720
583 컴퓨터잡담 엑셀 VBA) Shell로 외부프로그램 호출 2011.11.07 12702
582 컴퓨터잡담 jQuery 강좌 3 2009.10.27 12630
581 컴퓨터잡담 [악성코드퇴치] fph.exe 프로세서 제거하기 1 2010.08.11 12594
580 Excel 엑셀 RANK 함수의 낮은자리부터 순위매김 2012.03.26 12582
579 컴퓨터잡담 [REMIX OS]How to Edit of REMIX OS build.prop? 수정방법 file 2019.11.10 12579
578 컴퓨터잡담 [윈도우7] 이 컴퓨터는 정품 Windows를 사용하고 있지 않습니다 해결방법 1 2011.09.12 12540
Board Pagination Prev 1 ... 15 16 17 18 19 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소