SEM SEO Google Adwords Adsense PPC โปรโมทเว็บไซต์ เขียนโปรแกรม

14Jun/112

Blog Posting with XML-RPC


สำหรับคนที่ทำ SEO หลายคนคงเคยทำ network ส่วนตัวกันมาบ้างพอสมควร ไม่ว่าจะใช้ networks เหล่านั้นเป็นสะเหมือน web farm ที่จะสร้างลิงค์มายังเวปเป้าหมายหรือแม้กระทั่งจัดการเวปเป้าหมายโดยตรง แต่การจัดการ network/blogs เหล่านั้นมีความยุ่งยากและใช้เวลามากพอสมควร หลายคนจึงเลือกที่จะเสียเงินซื้อ tools ต่างๆมาใช้ เช่นพวก BMG, scrapbox ต่างๆ ซึ่งผมก็ไม่รู้ว่ามันมีข้อดีข้อเสียอย่างไรเพราะไม่เคยใช้ tool ที่ผมใช้ในการจัดการ network/blogs เหล่านั้น เขียนขึ้นมาเอง โดยเป็นการทำงานผ่าน protocol XML-RPC ซึ่งถ้า blogs เหล่านั้น enable XML-RPC ก็จะสามารถจัดการ blogs ได้ผ่าน protocol XML-RPC

วันนี้ผมเลยอยากเอาโค้ดมาแปะไว้กันลืมและเผื่อผู้ที่สนใจบ้างสักหน่อย การทำงานของโค้ดก็ตรงไปตรงมา ผมจะไม่ขออธิบายอะไรมากนัก ก่อนอื่นต้องโหลด include file ตัวนี้ก่อนโค้ดถึงจะทำงานได้นะครับ IXR_Library.inc

require_once("IXR_Library.inc");

$id = $_POST["id"];
$title = $_POST["title"];
$body = $_POST["body"];
$category = $_POST["$category"];
$tags = $_POST["tags"];
$blogURL = $_POST['BlogURL'];

// set it to false in Production Environment
$client->debug = false;

// encode needed
$title = htmlentities($title , ENT_NOQUOTES, "UTF-8");
$tags = htmlentities($tags ,ENT_NOQUOTES, "UTF-8");

$content = array('title'=>$title,
       'description'=>$body,
       'mt_allow_comments'=>0,		// 1 to allow comments
       'mt_allow_pings'=>0,		// 1 to allow trackbacks
       'post_type'=>'post',
       'mt_keywords'=>$tags,
       'categories'=>array($category),
       'custom_fields' =>  array($customfields));

// create the client object
$client = new IXR_Client($blogURL . "xmlrpc.php");
$username = $_POST['Username'];
$password = $_POST['Passwd'];

// last parameter is 'true' which means post immideately, to save as draft set it as 'false'
$params = array(0,$username,$password,$content,true);

// run a query for PHP
if (!$client->query('metaWeblog.newPost', $params)) {
        die('An error occurred - '.$client->getErrorCode().": ".$client->getErrorMessage());
} else {
        // post blog success
        // do what ever you want here
}

Related posts:

  1. XML-RPC XML-RPC เป็นสิ่งที่วนเวียนอยู่ในการทำงานในช่วงสองเดือนที่ผ่านมา สำหรับการเขียนโปรแกรมเลียนแบบ scrapbox เนื่องจากไม่อยากเสียตังค์ซื้อ(งก)! และอยากได้โปรแกรมที่ตอบสนองการทำงานของตัวเองโดยสมบรูณ์มากกว่า XML-RPC เป็นวิธีการหนึ่ง (ไม่เชิงที่จะเรียกว่า protocol?)...
Comments (2) Trackbacks (0)
  1. ขอบคุณมากนะครับ ^^ เก็บไว้เป็นความรู้ กำลังสนใจเรื่องพวกนี้อยู่พอดี

  2. ขอบคุณครับสำหรับความรู้ดี ๆ


Leave a comment

(required)

No trackbacks yet.