get_image_url()
获取商品图片地址,通过模板标签{$article.image_url}
在文章中插入图片。ECShop调用文章内图的方法归纳
方法一:通过读取文章内容获取图片
1、步骤:打开includes/lib_article.php
,在以下代码段后面添加新代码:
```php
$arr[$article_id]['url'] = $row['open_type'] != 1 ? build_uri('article', array('aid'=>$article_id), $row['title']) : trim($row['file_url']);
```
添加如下代码:
```php
$arr[$article_id]['file_url'] = trim($row['file_url']);
```
2、模板调用:在模板文件中使用以下标签来调用图片:
```smarty
{$article.file_url}
```
演示代码:
```html
<A href="{$article.url}" target=_blank><IMG alt="{$article.title|escape:html}" src="{$article.file_url}" width=140 height=90>{$article_item.short_title|truncate:"10":"..."}</A>
```
方法二:直接获取附件图片
1、步骤:直接获取文章的附件图片,这种方法相对简单,但不够精确。
```php
// 示例代码
$attachment_images = get_attachment_images($article_id);
```
2、注意事项:如果附件不是图片文件,该方法可能不准确,因此不建议使用。
方法三:扩展文章功能,增加图文选项
1、语言包添加:在languages/zh_cn/admin/article.php
中添加:
```php
$_LANG['guosetuwen'] = '图文';
```
2、后台模板修改:修改admin/templates/article_info.htm
和admin/templates/article_list.htm
文件,添加图文选项。
3、主题模板调用:在主题模板文件中调用图文类型实现图片新闻功能。
```html
<ul class="pic">
<!-{foreach from=$newslunbos item=newslunbo name=noslide} -->
<li><a href="{$newslunbo.url}" title="{$newslunbo.title|escape:html}" class="f6"><img src="{$newslunbo.art_thumb}" alt="{$newslunbo.title|escape:html}"/></a></li>
<!-{/foreach} -->
</ul>
```
4、辅助函数:在article_cat.php
文件中添加辅助功能函数:
```php
function get_class_list_articles($cat_id='0', $list_type='0', $list_num='10', $list_order='add_time DESC') {
$sql = 'SELECT article_id, title, add_time, art_thumb, file_url, open_type FROM ' . $GLOBALS['ecs']->table('article') . ' WHERE ';
if ($cat_id != '0') {
$sql .= "cat_id = " . $cat_id . " and ";
}
$sql .= "article_type = " . $list_type . " ORDER BY " . $list_order . " " . $list_num;
$res = $GLOBALS['db']->getAll($sql);
foreach ($res as $idx => $row) {
$arr[$idx]['id'] = $row['article_id'];
$arr[$idx]['title'] = $row['title'];
$arr[$idx]['art_thumb'] = $row['art_thumb'];
$arr[$idx]['short_title'] = sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']);
$arr[$idx]['add_time'] = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']);
$arr[$idx]['url'] = $row['open_type'] != 1 ? build_uri('article', array('aid' => $row['article_id']), $row['title']) : trim($row['file_url']);
}
return $arr;
}
```
相关问题与解答栏目
1、问题:如何在首页调用文章的第一张图片作为缩略图?
解答:可以在includes/lib_article.php
文件中添加代码来获取文章的第一张图片,并在模板文件中用{$article.file_url}
标签调用,具体步骤如上所述。
2、问题:如何确保获取的图片一定是文章中的图片而不是其他类型的附件?
解答:可以通过判断附件的类型来确保只获取图片类型的附件,检查文件扩展名是否为图片格式(如 .jpg, .png, .gif 等)。
到此,以上就是小编对于“ecshop调用文章内图的方法归纳”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。