3

我正在使用 codeigniter 发布到我的 wordpress 博客。

代码

模型

function doPost($title='new post',$content='hi',$categories=array('new'),$keys='new, none')
    {
        $this->load->library('xmlrpc');

        $thePost= array(
            array(
                'title' => array($title,'string'),
                'date_created_gmt'=>array($datetime,'dateTime.iso8601'),
                'description' => array($content,'string'),
                'categories' => array($categories,'struct'),
                'mt_keywords'    => array($keys,'string'),
                'post_type' => array('post','string'),
            ),
            'struct'
        );
        $this->xmlrpc->server('http://demo.com/xmlrpc.php', 80);
        $this->xmlrpc->method('metaWeblog.newPost');
        $request = array('1',$user,$pass,$thePost,TRUE);
        $this->xmlrpc->request($request);
        $result = $this->xmlrpc->send_request();

        if (!$result) {
            echo $this->xmlrpc->display_error();
        } else {
            print_r($this->xmlrpc->display_response());
        }
    }

但我有一个问题。

第一个。我可以检查是否已经存在具有相同标题的帖子吗?

第二。目前,如果我发布一个不存在的类别,则帖子提交为未分类,如果不存在,我该如何更改它以创建类别?

第三。我可以在一个 xmlrpc 请求中发布多个帖子吗?

谢谢,我正在使用最新版本的 wordpress(今天是我使用 wordpress 的第 0 天!),它位于远程服务器上。

谢谢,谢谢

4

1 回答 1

2

重新第一/第二。

您可以使用wp.getTerms来检查类别是否存在。

使用添加类别wp.newTerm

使用创建帖子wp.newPost

重新第三。

我可以在一个 xmlrpc 请求中发布多个帖子吗?

不,不要推送内容。

尽管如此,如果您确实可以访问 WP 安装,您可以创建一个小插件,该插件可以insert_posts在从您的 CI 应用程序远程触发后从提要中提取内容。

于 2013-04-10T03:30:56.040 回答