# 图文素材
[toc]
图文素材属于永久类型的素材,上传后可以在微信管理后台查看到。
## 新增图片素材
```php
/上传永久素材
$instance = WeChat::instance('material');
$material = $instance->addMaterial('image', 'tests/images/user.jpg');
```
## 新增图文素材
```php
$articles = [
'articles' => [
[
'title' => '标题',
//图文消息的封面图片素材id(必须是永久消息的mediaID)
'thumb_media_id' => $material['media_id'],
//作者
'author' => 'johnxu',
//图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
'digest' => '摘要信息...',
//1 显示封面 0 不显示
'show_cover_pic' => 1,
//图文内容,必须少于2万字符
'content' => '图文内容...',
//图文消息的原文地址,即点击“阅读原文”后的URL
'content_source_url' => 'http://www.johnxu.net',
],
],
];
//添加图文,返回为新增的图文消息素材的media_id。
$instance = WeChat::instance('material');
$result = $instance->addNews($articles);
//上传成功的图文消息media_id,可用于群发消息使用
echo $result['media_id'];
```
## 修改图文素材
```php
$article = [
//要修改的图文消息的id
"media_id" => 'xxxxx',
//要更新的文章在图文消息中的位置(多图文消息时,此字段才有意义),第一篇为0
"index" => 0,
'articles' =>[
'title' => '标题',
//图文消息的封面图片素材id(必须是永久mediaID)
'thumb_media_id' => $data['media_id'],
//作者
'author' => 'johnxu',
//图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空
'digest' => '摘要信息...',
//1 显示封面 0 不显示
'show_cover_pic' => 1,
//图文内容,必须少于2万字符
'content' => '图文内容...',
//图文消息的原文地址,即点击“阅读原文”后的URL
'content_source_url' => 'http://www.johnxu.net'
]
];
$result = (new WeChat())->instance('material')->editNews($article);
```
**返回值**
```php
[
"errcode": 9001034,//错误号 成功时为0
"errmsg": '错误提示信息'
]
```
## 上传图文消息内的图片获取URL
本接口所上传的图片不占用公众号的素材库中图片数量的5000个的限制。图片仅支持jpg/png格式,大小必须在1MB以下。
```php
$instance = WeChat::instance('material');
$material = $instance->addNewsImage('tests/images/user.jpg');
echo $material['url'];
```