云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何在dede中调用文章内的第一张原始图片(非缩略图)?

使用dede的标签{dede:field name=’body’/}可以调用文章内容,然后通过正则表达式匹配第一张原始图片的地址。

在DedeCMS(织梦内容管理系统)中,调用文章内第一张原始图片而非缩略图,是一个常见的需求,本文将详细介绍实现这一功能的步骤和方法,确保内容准确、排版精美、逻辑清晰。

方法一:修改include/extend.func.php文件

1、找到并打开文件

进入DedeCMS根目录,找到“include”文件夹。

使用Dreamweaver软件或记事本打开“extend.func.php”文件。

2、在文件末尾添加函数

“`php

//取第一张图地址

function firstimg($str_pic) {

$str_sub = substr($str_pic, 0, 7) . ".jpg"; //删除缩略图字符串最后七位,然后再补上后缀.jpg

return $str_sub;

}

“`

3、保存文件

4、在模板中调用

使用以下代码在HTML模板中进行调用:

“`html

[field:litpic function=’firstimg(@me)’/]

“`

或者:

“`html

{dede:field name=’litpic’ function="firstimg(@me)"/}

“`

方法二:使用正则表达式匹配第一张图片

1、找到并打开文件

进入DedeCMS根目录,找到“include”文件夹。

使用Dreamweaver软件或记事本打开“extend.func.php”文件。

2、在文件末尾添加函数

“`php

function GetFirstImg($arcid){

global $dsql;

$query = "SELECT body FROMdede_addonarticle where aid=’$arcid’";

$row = $dsql>GetOne($query);

$preg = "/<img.*?src=[‘"](.+?)[‘"].*?>/i";

preg_match_all($preg, $row[‘body’], $match);

return $match[1][0];

}

“`

3、保存文件

4、在模板中调用

使用以下代码在HTML模板中进行调用:

“`html

[field:litpic function=bigimg(‘@me’)/]

“`

或者:

“`html

{dede:field name=’litpic’ function="bigimg(@me)"/}

“`

方法三:修改调用标签文件

1、找到并打开文件

进入DedeCMS根目录,找到“include/taglib/arclist.lib.php”文件。

2、在文件中找到并修改函数

找到function lib_arclistDone()函数。

在$row[]数组的下面加入以下代码:

“`php

if(GetFirstImg($row[‘id’]) != "") {

$row[‘firstimg’] = GetFirstImg($row[‘id’]);

}

“`

3、保存文件

4、在模板中调用

使用以下代码在HTML模板中进行调用:

“`html

{dede:field name=’firstimg’/}

“`

相关问答FAQs

问题1:为什么需要修改include/extend.func.php文件?

解答:include/extend.func.php文件中包含了DedeCMS的一些扩展函数,通过在这个文件中添加自定义函数,可以实现一些特殊的功能需求,比如调用文章的第一张原始图片,这种方法可以灵活地对文章内容进行处理,满足不同的展示需求。

问题2:如果文章中没有图片怎么办?

解答:如果文章中没有图片,上述方法可能会返回空值,为了避免这种情况,可以在模板中设置一个默认的图片路径,当获取不到第一张图片时,显示默认图片。

{dede:field name='litpic' function="firstimg(@me)" default="path/to/default/image.jpg" /}

这样即使文章中没有图片,也能保证页面的正常显示。

通过以上步骤,你可以在DedeCMS中成功调用文章的第一张原始图片,而不是缩略图,希望这些方法对你有所帮助!

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何在dede中调用文章内的第一张原始图片(非缩略图)?》
文章链接:https://www.yunzhuji.net/internet/226009.html

评论

  • 验证码