Merhaba,

XML-RPC kullanmaya çalışıyorum ama şöyle bir sorun var.


// $veri_cikti[2], $haber[1] ve $haber[3] regex ile diğer siteden çektiğim veriler

$title = $veri_cikti[2];
$body = strip_tags($haber[1] . " " . $haber[3]);

        require('../../wp-includes/class-IXR.php'); 
        $client = new IXR_Client('http://localhost/_wordpress5_v3/xmlrpc.php');

        $USER = 'admin';
        $PASS = 'parola';

       	$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'=>'test','test 2',
			'categories'=>array($category)
		);

        if (!$client->query('metaWeblog.newPost','', $USER,$PASS, $content, true))
        {
            die( 'Error while creating a new post' . $client->getErrorCode() ." : ". $client->getErrorMessage());  
        }
        $ID =  $client->getResponse();

        if($ID)
        {
            echo 'Post published with ID:#'.$ID;

        }
Üstteki kodu çalıştırdığım zaman, diğer siteden çektiğim verinin sadece başlığı ekleniyor. Yazı içeriği eklenmiyor. Mesela $body = $haber[1] yerine $body = "Yazı içeriği" gibi sabit bir değer girersem sorunsuz olarak içerik ekleniyor. Ama değişkene atadığım zaman olmuyor. $haber[1] boş değil bu arada, sayfanın herhangi bir yerinde yazdırınca sorun olmuyor...

$baslik = strip_tags($veri_cikti[2]);
$icerik = strip_tags($haber[1] . " " . $haber[3]);

class XMLRPClientWordPress
{

	var $XMLRPCURL = "http://localhost/_wordpress5_v3/xmlrpc.php";
	var $UserName  = "admin";
	var $PassWord = "parola";
	
	// constructor
    public function __construct($xmlrpcurl, $username, $password) 
	{
        $this->XMLRPCURL = $xmlrpcurl;
		$this->UserName  = $username;
		$this->PassWord = $password;
       
    }
	function send_request($requestname, $params) 
	{
		$request = xmlrpc_encode_request($requestname, $params);
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
		curl_setopt($ch, CURLOPT_URL, $this->XMLRPCURL);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
		curl_setopt($ch, CURLOPT_TIMEOUT, 1);
		$results = curl_exec($ch);
		curl_close($ch);
		return $results;
	}
	
	function create_post($title,$body,$category,$keywords='',$encoding='UTF-8')
	{
		$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)
		);
		$params = array(0,$this->UserName,$this->PassWord,$content,true);
		
		return $this->send_request('metaWeblog.newPost',$params);	
	}
}

$objXMLRPClientWordPress = new XMLRPClientWordPress("http://localhost/_wordpress5_v3/xmlrpc.php" , "admin" , "parola");

echo $objXMLRPClientWordPress->create_post($baslik,$icerik,'');
Bu kodu çalıştırdığım zaman ise hem başlık hem yazı içeriği ekleniyor AMA Türkçe karakterler bozuk oluyor. Karakterleri bir türlü düzeltemedim.

İki koddan birisini kullanmam lazım ama işin içinden çıkamadım??