php – WordPress API提交帖子
发布时间:2020-12-13 22:54:47 所属栏目:PHP教程 来源:网络整理
导读:我是一名经验丰富的 PHP程序员,熟悉CURL并将其与cookie jar文件一起使用,并且对JSON也很熟悉. 我不熟悉的是WordPress 4.1.1,我的目标很简单:远程调用WordPress网站本地或插件(希望本机),以及: a)提交文章/帖子,希望如此 b)按用户排序的帖子列表(比较). 从
我是一名经验丰富的
PHP程序员,熟悉CURL并将其与cookie jar文件一起使用,并且对JSON也很熟悉.
我不熟悉的是WordPress 4.1.1,我的目标很简单:远程调用WordPress网站本地或插件(希望本机),以及: a)提交文章/帖子,希望如此 b)按用户排序的帖子列表(比较). 从目前为止的研究中我发现你需要登录,也许这是一个两步的过程,包括获取一个nonce,然后用nonce提交帖子.任何人都可以告诉我在API文档下查看哪里,或从哪里开始? 解决方法
您可以使用
XML-RPC API 执行此操作,这是一个使用curl的简单示例,它使用
wp.newPost 创建一个新帖子:
// initialize curl $ch = curl_init(); // set url ie path to xmlrpc.php curl_setopt($ch,CURLOPT_URL,"http://www.example.com/xmlrpc.php"); // xmlrpc only supports post requests curl_setopt($ch,CURLOPT_POST,true); // return transfear curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); // setup post data $content = array( 'post_type' => 'post','post_content' => 'This is the post content','post_title' => 'This is the post title','post_status' => 'publish',); // parameters are blog_id,username,password and content $params = array(1,'<user>','<password>',$content); $params = xmlrpc_encode_request('wp.newPost',$params); curl_setopt($ch,CURLOPT_POSTFIELDS,$params); // execute the request curl_exec($ch); // shutdown curl curl_close($ch); 要获取您可以使用 // filter used when retreiving posts $filter = array( 'post_type' => 'post','number' => 50,'offset' => 0,'orderby' => 'post_title',); // fields to include in response $fields = array( 'post_title','post_author','post_id','post_content',); $params = array(1,'<username>',$filter,$fields); $params = xmlrpc_encode_request('wp.getPosts',$params); // excute query $response = curl_exec($ch); // response is xml $response = simplexml_load_string($response); // walk over response and figure out if post should be displayed or not (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |