1

我正在通过 php 帖子创建一个新的 wp 博客帖子。我怎样才能得到博客帖子 ID 的回复?我能想到的一种方法是获取最新的博客文章 ID,但我想要一种更万无一失的方法。

<?php 
require_once("IXR_Library.php.inc");

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

$title="Blog Title"; // $title variable will insert your blog title 
$body="Blog Content"; // $body will insert your blog content (article content)

$category="category1, category2"; // Comma seperated pre existing categories. Ensure that these categories exists in your blog.
$keywords="keyword1, keyword2, keyword3";

$customfields=array('key'=>'Author-bio', 'value'=>'Autor Bio Here'); // Insert your custom values like this in Key, Value format

    $title = htmlentities($title,ENT_NOQUOTES,$encoding);
    $keywords = htmlentities($keywords,ENT_NOQUOTES,$encoding);

    $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'=>$keywords,
        'categories'=>array($category),
        'custom_fields' =>  array($customfields)
    );

// Create the client object
$client = new IXR_Client('Your Blog Path/xmlrpc.php');

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

// Run a query for PHP
if (!$client->query('metaWeblog.newPost', $params)) {
    die('Something went wrong - '.$client->getErrorCode().' : '.$client->getErrorMessage());
}
else
    echo "Article Posted Successfully";
?>
4

1 回答 1

1

而不是以

else
    echo "Article Posted Successfully";

采用:

$ID =  $client->getResponse();
if ($ID)
    echo 'Article Posted Successfully. ID = '.$ID;
于 2013-02-25T07:29:17.887 回答