一、說明:
1、這個函數(shù)由微博通wordpress插件修改過來??梢詫崿F(xiàn)群發(fā)微博,前提條件是你在各大微博都有注冊??梢詫崿F(xiàn)定時發(fā)布。
定時發(fā)的時候"發(fā)布微博"選空。
2、升級以后批量更新不會群發(fā)微博,修改文章的時候選1為發(fā)布微博,0為不發(fā)布,定時發(fā)布的時候選空。
3、插件如果是在UTF-8的編碼下使用需要改代碼,如果單純復制使用只適合GBK版本。
二、操作方法:
1、先新建一個字段,注:初始值是3個值:0為不發(fā)布;1為發(fā)布;空未審核。
字段名:"weibo"
字段標識:"發(fā)布微博"
初始值:
0:default
1
(空也就是回車)
2、以下函數(shù)放入userfun.php中 。
<?php
//---------------------------微博發(fā)布函數(shù)
function send_to_wbto($id) {
global $empire,$dbtbpre,$public_r,$navinfor ;
$rr = $empire->fetch1("select * from {$dbtbpre}ecms_news_data_1,{$dbtbpre}ecms_news where {$dbtbpre}ecms_news_data_1.id = '".$id."' and {$dbtbpre}ecms_news_data_1.id = {$dbtbpre}ecms_news.id limit 1");
$title = $rr[title] ;
$content =esub(strip_tags($rr[smalltext]),200);
$url = $rr[titleurl] ;
$title1 = $title.'//'.$content.$rr[titleurl];
preg_match_all('/<img[^>]+src=['"](http[^'"]+)['"].*>/isU',$rr[newstext], $image);//匹配圖像格式
$p_sum = count($image[1]);
if ($p_sum > 0) {
$p = $image[1][0];
}
if (!$p) {
$p = $rr[titlepic];
}
$username = 'xxxxx';
$password = 'xxxxx';
$image_url = $p;
$title1 = iconv('GB2312', 'UTF-8',$title1); //將字符串的編碼從GB2312轉(zhuǎn)到UTF-8,如果是UTF-8段代碼可以注釋掉
$fields = array();
$fields['source'] = 'wordpress';
$fields['content'] = urlencode($title1); //
$ch = curl_init();
if ($image_url) {
$fields['imgurl'] =$image_url;
curl_setopt($ch, CURLOPT_URL, "http://wbto.cn/api/upload.json");
} else {
curl_setopt($ch, CURLOPT_URL, "http://wbto.cn/api/update.json");
}
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_FAILONERROR, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
$result = curl_exec($ch);
curl_close($ch);
}
?>
3、建一個公共變量"weibo_se"
<?php
$rrr2 = $empire->fetch1(" select * from {$dbtbpre}ecms_news where id='".$navinfor['id']."' limit 1 ");
$sql = $empire->query1(" UPDATE {$dbtbpre}ecms_news set weibo='0' where id='".$navinfor['id']."' ");
if(function_exists('send_to_wbto') ) {
if($rrr2['weibo']=='1'||$rrr2['weibo']=='' ){
send_to_wbto($navinfor['id']) ;
}
}
?>
4、[!--temp.weibo_se--]放入內(nèi)容模板中
更多信息請查看IT技術專欄