微信永久素材php,php微信的新增永久素材的详细介绍(基本流程)

本篇文章给大家带来的内容是关于php微信的新增永久素材的详细介绍(基本流程),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

微信的新增永久素材,最重要的是图文素材,基本流程是如下:获取access_token;

上传封面素材,获取永久素材的media_id,可以是images或者thumb类型都可以

上传图文中的图片,获取图片的腾讯域名的url

上传永久图文素材

第一步就不说了,curl的就可以解决。

第二步获取永久素材跟上篇获取临时id大同小异,等下会吧代码贴出来

第三步获取图文中的图片url,主要也只是curl,和获取素材的流程差不多

第四步就是最重要,不过有了神器就简单了

代码基本就是如下几个封装好的方法,图片地址可以参考上篇的地址,其他都是很简单的/*

* 新增永久图文

*/

public function addEver_media($json){

$url = "https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=".$this->get_access_token();

$res = $this->post($url, $json, 'json');

// 异常处理: 获取时网络错误

// 判断是否调用成功

return $res;

}

/*

* 新增永久素材

*/

public function addSucai($path,$type,$title="",$dis=""){

$url =

"https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=".$this->get_access_token()."&type=".$type;

if($type=="video"){

$b = json_encode(array(

'title'=>$title,

'introduction'=>$dis

));

$res = array(

'media' => '@'.$path,

'description'=>$b

);

$res = $this->upload($url, $res);

}else{

$res = $this->upload($url, array('media' => '@'.$path));

}

// 判断是否调用成功

return $res;

}

/*

* 获取永久素材url

*/

public function getSucaiURL($media){

$url = "https://api.weixin.qq.com/cgi-bin/material/get_material?access_token=" .$this->get_access_token();

$arr = json_encode(array('media_id' => $media));

$res = $this->post($url, $arr, 'json');

// 判断是否调用成功

return $res;

}

/*

* 上传图片获取url

*/

public function getPicURL($path){

$url = "https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=" .$this->get_access_token() ;

$res = $this->upload($url, array('media' => '@'.$path));

// 判断是否调用成功

return $res;

}

/*

* 上传图片。图文专用

*/

public static function upload($url, $filedata) {

$curl = curl_init ();

if (class_exists ( '/CURLFile' )) {//php5.5跟php5.6中的CURLOPT_SAFE_UPLOAD的默认值不同

curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, true );

} else {

if (defined ( 'CURLOPT_SAFE_UPLOAD' )) {

curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false );

}

}

curl_setopt ( $curl, CURLOPT_URL, $url );

curl_setopt ( $curl, CURLOPT_SSL_VERIFYPEER, FALSE );

curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, FALSE );

if (! empty ( $filedata )) {

curl_setopt ( $curl, CURLOPT_POST, 1 );

curl_setopt ( $curl, CURLOPT_POSTFIELDS, $filedata );

}

curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 );

$output = curl_exec ( $curl );

curl_close ( $curl );

return $output;

}

public function post($url, $fields, $data_type='text')

{

$cl = curl_init();

if(stripos($url, 'https://') !== FALSE) {

curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($cl, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($cl, CURLOPT_SSLVERSION, 1);

}

curl_setopt($cl, CURLOPT_URL, $url);

curl_setopt($cl, CURLOPT_RETURNTRANSFER, 1 );

curl_setopt($cl, CURLOPT_POST, true);

curl_setopt($cl, CURLOPT_POSTFIELDS, $fields);

$content = curl_exec($cl);

$status = curl_getinfo($cl);

curl_close($cl);

if (isset($status['http_code']) && $status['http_code'] == 200) {

if ($data_type == 'json') {

$content = json_decode($content);

}

return $content;

} else {

return FALSE;

}

}

相关推荐:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值