Постинг в Wordpress с помощью Zend_Xml_Rpc
Размещено 2010-06-15
в разделе Программирование | Метки:
Zend Framework, XML RPC, Wordpress
Некоторое время назад я писал о том как постить в блоги на Wordpress с помощью Zend Framework, класс там немного был не дописан, сегодня опять появилась задача постить в блоги и несколько часов я убил на то чтобы постить с определенной датой, либо пост не отправлялся и возвращалась ошибка, либо он отправлялся но без поля dateCreated и проставлялась текущая дата. Вот кусок кода, в котором отправляются данные в блог:
<?php
$params = array('title' => 'test post 2 ', 'description' => 'this is post content 2', 'dateCreated' => date('c', strtotime('-1 week')));
$postRequest = array('blog_id' => $this->wpBlogId,
'username' => self::WORDPRESS_USER,
'password' => self::WORDPRESS_PASSWORD,
'content' => $params,
'publish' => 1,
);
try
{
$result = $this->wpClient->call('metaWeblog.newPost', $postRequest);
}
catch (Zend_XmlRpc_Client_FaultException $e)
{
print "\n" . $e->getCode();
print "\n" . $e->getMessage();
}
?>Казалось бы все правильно и дата в нужном формате, однако получаем ошибку "Failed to parse response". Вот решение проблемы, нужно правильно указывать дату:
<?php
$params = array('title' => 'test post 2 ', 'description' => 'this is post content 2', 'dateCreated' => new Zend_XmlRpc_Value_DateTime(strtotime('-1 week'))));
?>