因为是做测试,所以代码都是在一个控制器的。。。
//上传永久图文素材
function addNews(){
$access_token = $this->getWxAccessToken();
$thumb_media_id=$this->addMaterial();
$content_img=$this->addMaterialUrl();
dump($content_img);
$url = "https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=".$access_token;
$array = array(
"articles" => array( /*若新增的是多图文素材,则此处应还有几段articles结构 */
"title" => urlencode('这是一个测试的标题'),
"thumb_media_id" => $thumb_media_id, //图文消息的封面图片素材id(必须是永久mediaID)
"author" => urlencode('旭日编辑'), //作者
"digest" => urlencode('这是测试的摘要'), //图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
"show_cover_pic" => 1, //是否显示封面,0为false,即不显示,1为true,即显示
"content" => urlencode( "<h1>这是一个测试文章</h1><br /><img src='{$content_img}' /><br /><div>测试下图文素材的效果</div><br /><div>测试下图文素材的效果</div>" ), //图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS
"content_source_url" => urlencode('http://www.网址') //图文消息的原文地址,即点击“阅读原文”后的URL
)
);
$postJson = urldecode( json_encode( $array ) );
dump($postJson);
$res=$this->https_request( $url ,'post', 'json', $postJson);
dump($res);
return $res;
}
以下分别是打印三个值的结果
1.图片的url
2.转码过的数组
3.调用接口后的结果
Html标签属性我用的是单引号,比如图片src,就不用转移了啊htmlspecialchars(str_replace(""","'",$v))
看官方说content可以用html标签的,内容为空难道和我content使用html标签有关吗...