不登录wordpress后台发表博客的方法

原文链接:http://www.wprecipes.com/post-on-your-wordpress-blog-using-php#

一、原文翻译

谁说我们一定要登录WordPress的控制板才能发表博客日志? 利用PHP和cURL一样可以达到同样的效果, 下面就来看看吧。  
我们要用下面的代码来完成任务, 不过这代码不是专为WordPress而设计的,所以请不要把代码复制到functions.php或者其它任何文件中。 
注意:一定要激活WordPress上的XMLRPC日志选项。 不激活XMLRPC,以上代码就不能在数据库中添加内容。 还有一点需要注意,php.ini文件中的XMLRPC函数也要被激活代码才能运行。

function wpPostXMLRPC($title, $body, $rpcurl, $username, $password, $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,$username,$password,$content,true);    $request = xmlrpc_encode_request('metaWeblog.newPost',$params);    $ch = curl_init();    curl_setopt($ch, CURLOPT_POSTFIELDS, $request);    curl_setopt($ch, CURLOPT_URL, $rpcurl);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    curl_setopt($ch, CURLOPT_TIMEOUT, 1);    $results = curl_exec($ch);    curl_close($ch);    return $results; }  ?>

二、自定义表单调用

通过上面的函数,我们不难理解其中函数的各个参数。

$title:文章标题
$body:文章内容
$rpcurl:wordpress中的xmlrpc.php文件路径
$username:后台登录用户名
$password:后台登录密码
$category:文章所属分类
$keywords:文章关键字
$encoding:编码

了解了各个参数的意义,调用就变得非常简单,伪码如下:

$username='admin'; $password='admin'; $title=$_POST['title']; $keywords=$_POST['keyword']; $body=$_POST['content']; $rpcurl = "http://yourdomain.com/xmlrpc.php"; $result=wpPostXMLRPC($title,$body,$rpcurl,$username,$password,0,$keywords); echo(print_r($result));

再去你的wordpress后台看看文章是不是已经添加进来了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值