dedecms(织梦) 获取文章全部图片的方法

最近在dedecms二次开发中 需要调用一片普通文章内的全部图片

方法思路有很多 这里分享下其中一个

环境

织梦版本: DedeCMS V5.7 SP1正式版 发布日期: 2016-09-06(最新版 其他版应该通用)

PHP: 7.0.2(应该也通用) MySql: 5.6(5.2以上应该都同意)

代码

1.找到文件: 织梦根目录/include/extend.func.php 在最下方添加

/*几个形参:   $aid (文章id)   $num (调用图片的数量)  $style (两种调用样式)*/function Getimgs($aid, $num = 0, $style = ‘‘){
    global $dsql;
    $imgurls = ‘‘;   //下两行区别正与是否指定数据库前缀 第一行效率更高 自行选择  //$row = $dsql -> getone("Select body From `dede_addonarticle` where aid=‘$aid‘");//数据库前缀若为dede_可将此行注释删除(最前方双斜线)
    $row = $dsql -> getone("Select body From `#@__addonarticle` where aid=‘$aid‘"); //若上一行注释删除 请将此行代码注释或删除
    $imgurls = $row[‘body‘];
    preg_match_all("/<[img|IMG].*?src=\"(.*?)\".*?\/>/", $imgurls, $wordcount);
    $count = count($wordcount[1]);
    if ($num > $count || $num == 0)
    {
        $num = $count;
    }
    for($i = 0;$i < $num;$i++){
        if($style == ‘li‘)
        {
            $imglist .=‘<li><a href="#‘.$i.‘"><img src="‘. trim($wordcount[1][$i]) .‘" /></a></li>‘;
        }else{
            $imglist .= ‘<img src="‘. trim($wordcount[1][$i]) .‘" />‘;
        }
    }
    return $imglist;
}

2.调用方式

在可以调用到的地方使用

{dede:field.id function=Getimgs(@me,5,‘li‘)/}

其中几个实参 @me(文章id), 5(调用图片数量[大于时间图片数量时无效]) , ‘li‘(两种样式)

方法基本如上(写的不好,望见谅) 另外,不懂的可在下方留言

时间: 2024-08-01 22:45:26

dedecms(织梦) 获取文章全部图片的方法的相关文章

dedecms织梦修改文章后如何不改变时间文章排序?

dedecms织梦修改文章后台默认的情况是这样的: 当你编辑完了点击提交,DEDECMS就会自动的把原先发布的时间改成当前的.也因此,在文章列表排序会把新编辑的文章排到前面.这个过程对很多情况都是合理的,但是有些时候,我们不需要更新当前的时间,只需用原先发布的时间就行.其实解决方法很简单:(以目前最新的DEDECMS5.7 SP1为例) 1,找到 dede/templets/article_edit.htm 2,在article_edit.htm文件里搜索找到$nowtime = GetDate

dedecms织梦系统后台验证码图片不显示的解决方法

网站迁移后,dedecms织梦系统后台验证码图片不显示的解决方法通用解决方案-取消后台验证码功能因为没有验证码,不能进后台,所以修改php文件源代码:方法一:打开dede/login.php 找到如下代码    if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen)){        ResetVdValue();        ShowMsg('验证码不正确!','logi

dedecms织梦手机模板使用和制作方法

1.手机模板命名规则 在新织梦的default模板中,除了原有的模板外,多了些手机模板,主要手机模板如下: index_m.htm 首页模板 index_default_m.htm 频道页模板 list_default_m.htm 列表页模板 list_default_sg_m.htm 列表页模板 article_article_m.htm 内容页模板 article_default_m.htm 内容页默认模板 search_m.htm 搜索页模板 head_m.htm 顶部模板 footer_

DedeCms织梦发布文章时输入Tag标签逗号自动变成英文标点的方法

把TAG标签的间隔号由空格改为英文的逗号,这样使得经常原创文章的站长朋友非常不方便,因为我们输入汉字时总是喜欢使用全角的逗号,那么有没有办法使用 js脚本把输入的中文逗号变成英文逗号呢?当然是可以的!这样就不用输入tag的时候还切换输入法输入英文逗号了.以下是修改方法: 编辑打开/dede/templets/article_add.htm文件,然后查找如下代码: <input name="tags" type="text" id="tags"

【转】织梦为栏目添加图片的方法

如我们一个栏目列表都用缩略图来表示,而不仅仅只是文字,如果没有这项功能会非常麻烦,网上有很多这方面的资料,但是都试过了有很多问题,自己研究一下,测试基本通过.新加字段 typeimg后台执行SQL: alter table `cn_arctype` add `typeimg` char(100) NOT NULL default ''; 涉及到文件: dede/catalog_add.php               dede/catalog_edit.php               de

Dedecms(织梦)文章内容页和图片集内容页,调用缩略图的方法

Dedecms(织梦)文章内容页和图片集内容页,调用缩略图的方法,亲测可用! Dedecms(织梦)首页的图片调用,相信大家已经非常的清楚,但是今天我在进行内容页的编写的时候,发现了内容页图片的调用问题! 这种问题,一般出现在产品站内页,因为会有产品缩略图的图片展示,所以今天我专门搜集了这方便的帖子! 为大家来解决这个问题,我想一定能帮助到大家! 好了话不多说,写内容先! 文章内容页和图片集内容页,缩略图的调用.适合内页中调用. <img src="{dede:field.picname 

dedecms织梦添加ueditor百度编辑器(支持本地图片水印)

本站所有附件均为UTF-8版本,GBK版本的童学请自行转码: 教程最下面有解决栏目内容添加失败的解决方法和本地上传图片加水印方法. 最终效果 1.直接到百度编辑器官方下载PHP对应的版本 ueditor官方地址:http://ueditor.baidu.com/website/download.html 2.dedecms 程序 include文件夹下,创建 ueditor 文件夹 把下载到的ueditor文件扔进去(index.html不要) 3.include\inc\inc_fun_fun

dedecms织梦七牛云存储二次开发

DeDeCMS(织梦)整合七牛云储存的优势1.节省自身服务器带宽.流量.储存空间,因为使用七牛云前端JS SDK上传到七牛云.2.提高网站加载速度,因为大部分的流量由七牛云分发,减少了自身服务器带宽的占用,七牛云的CDN比普通的自建服务器还是要快的.3.不破坏系统兼容性,可以后台配置储存位置,如果哪天想用回自己服务器储存图片,只需要修改一个网站后台选项即可.DeDeCMS(织梦)整合七牛云储存思路在编辑文章前,通过网站后台设置图片储存位置(七牛云或者自己服务器),然后获取对应的图片地址.对DeD

dedecms织梦联动筛选[伪静态-目录形式]

演示效果 dedecms织梦联动筛选[伪静态-目录形式],网站用的是静态,筛选用的是伪静态,筛选的伪静态地址以字段和键值目录形式呈现,让筛选URL与静态保持一致.如: 静态栏目页 http://www.123.com/dianshi/ 静态栏目页分页 http://www.123.com/dianshi/list_1_2.html 伪静态筛选页 http://www.123.com/dianshi/area_0/ 伪静态筛选分页 http://www.123.com/dianshi/area_0