0

我使用下面的代码通过 XML-RPC 发布,它确实成功。但是当我发送一个长字符串 $bodypost 时,我的帖子没有正文内容。我用 html 代码测试它,它工作正常,然后我删除所有空间,我的 $bodypost 只有 1 行大约 4000 个字,它不工作。

我该如何解决?

    <?php 
function send_post($titlepost, $bodypost, $categorypost, $keywordspost )  
{  
    require_once("IXR_Library.php.inc");
    $encoding='UTF-8';
    $client->debug = false; //Set it to false in Production Environment
    $title= $titlepost; // $title variable will insert your blog title 
    $body= $bodypost; // $body will insert your blog content (article content)
    $category=$categorypost; // Comma seperated pre existing categories. Ensure that these categories exists in your blog.
    $keywords=$keywordspost;
    $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('http://www.domain.com/xmlrpc.php');
     $username = "abc"; 
     $password = "abc"; 
     $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

0

我找到了解决方法。如果我的正文代码是由默认 Wordpress 编辑器的源代码提供的,则此代码不起作用,但如果我将其更改为 CkEditor,它就可以工作!

于 2012-12-23T18:49:10.227 回答