//新增永久素材
public function addPermanentAssets(){
$media_id = $this->getPermanentMediaID();
$jsonArr = array(
"articles"=> array(
array(
"title"=> 'hello word',
"thumb_media_id"=> $media_id,
"author"=> 'martin',
"digest"=> 'digest',
"show_cover_pic"=> 0,
"content"=> "内容",
"content_source_url"=> 'url',
)
),
);
$json = json_encode($jsonArr, JSON_UNESCAPED_UNICODE);
$access_token = $this->getAccessToken();
$url = "https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=$access_token";
$result = $this->postCurlWxapp($url,$json);
dump($result);die;
}
//获取永久mediaID
public function getPermanentMediaID(){
$realurl = realpath("./").'\images\2.png';
$access_token = $this->getAccessToken();
$curl = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token={$access_token}&type=thumb";
$result = $this->httprequest($realurl,$curl);
$media_id = $result["media_id"];
return $media_id;
}
public function getAccessToken(){
$appid = 'xxx';
$srcret = 'xxx';
$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$srcret;
$data = $this->getCurlWxapp($url);
$data = json_decode($data,true);
return $data["access_token"];
}
public function getCurlWxapp($url){
$info=curl_init();
curl_setopt($info,CURLOPT_RETURNTRANSFER,true);
curl_setopt($info,CURLOPT_HEADER,0);
curl_setopt($info,CURLOPT_NOBODY,0);
curl_setopt($info,CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($info,CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($info,CURLOPT_URL,$url);
$output= curl_exec($info);
curl_close($info);
return $output;
}
public function postCurlWxapp($url,$data){
$ch = curl_init();
$header = "Accept-Charset: utf-8";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);
if(curl_errno($ch)){
return false;
}else{
return $tmpInfo;
}
}
public function httprequest($imgurl,$url){
$data = array(
"media" => "@$imgurl"
);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, FALSE); //将CURL_SAFE_UPLOAD设置为FALSE
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$output = curl_exec($ch);
curl_close($ch);
$result = json_decode($output,true);
return $result;//即为上传缩略图的media_id
}
参考
https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/Adding_Permanent_Assets.html
微信新增永久素材
于 2021-03-27 13:50:39 首次发布