如何在DedeCMS中调用列表页和文章页下的图集中的所有图片?

在dede列表页及文章页中,调用图集里的所有图片可以通过以下代码实现:,,“php,{dede:field name='body' function='GetImageUrl(@me)'/},

DedeCMS(织梦内容管理系统)中,调用列表页及文章页下的图集中的所有图片可以通过编写特定的PHP函数和标签来实现,以下是详细步骤和代码示例:

列表页下调用图集里的所有图片

1、解析文章图片集

“`php

function getAllImg($typeid){

global $dsql;

$sql_arc = "SELECT imgurls FROMidea_addonimages where typeid=".$typeid." order by aid asc limit 1";

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

$arr = explode(‘{dede:img’,$row[‘imgurls’]);

unset($arr[‘0’]);

$pic = array();

for($i = 1; $i<=count($arr);$i++){

$str = substr($arr[$i],0,strpos($arr[$i],’}’));

$arr_small = explode(‘ ‘,$str);

unset($arr_small[‘0’]);

for($j=1;$j<=count($arr_small);$j++){

$name =substr($arr_small[$j],0,strpos($arr_small[$j],’=’));

$val = $arr_small[$j];

$pic[$i][$name] = trim(strstr($val,"’"),"’");

}

$begin = strpos($arr[$i],"}")+1;

$over = strpos($arr[$i],"{")$begin;

$img = substr($arr[$i],$begin,$over);

$pic[$i][‘img’]=trim($img);

}

return $pic;

}

“`

2、生成HTML列表

“`php

function getArtImg($id){

$pic = getAllImg($id);

$Div = "";

for($i=1;$i<=count($pic);$i++){

$Div .="<li>

//列表页用 arcurl

<a href="".$pic[$i][‘arcurl’]."" title="".$pic[$i][‘text’]."">

<img src="".$pic[$i][‘ddimg’]."" width="150" alt="".$pic[$i][‘text’]."" />

</a><h5>".$pic[$i][‘text’]."</h5>

</li>";

}

return $Div;

}

“`

3、在列表模板中使用标签和函数

“`html

{dede:field.id function="getArtImg(@me)"/}

“`

文章页下调用图集里的所有图片

1、解析文章图片集

“`php

function getAllImg($aid){

global $dsql;

$sql_arc = "SELECT imgurls FROMidea_addonimages where aid=".$aid." ";

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

$arr = explode(‘{dede:img’,$row[‘imgurls’]);

unset($arr[‘0’]);

$pic = array();

for($i = 1; $i<=count($arr);$i++){

$str = substr($arr[$i],0,strpos($arr[$i],’}’));

$arr_small = explode(‘ ‘,$str);

unset($arr_small[‘0’]);

for($j=1;$j<=count($arr_small);$j++){

$name =substr($arr_small[$j],0,strpos($arr_small[$j],’=’));

$val = $arr_small[$j];

$pic[$i][$name] = trim(strstr($val,"’"),"’");

}

$begin = strpos($arr[$i],"}")+1;

$over = strpos($arr[$i],"{")$begin;

$img = substr($arr[$i],$begin,$over);

$pic[$i][‘img’]=trim($img);

}

return $pic;

}

“`

2、生成HTML列表

“`php

function getArtImg($id){

$pic = getAllImg($id);

$Div = "";

for($i=1;$i<=count($pic);$i++){

$Div .="<li>

如何在DedeCMS中调用列表页和文章页下的图集中的所有图片?

//列表页用 img

<a href="".$pic[$i][‘img’]."" title="".$pic[$i][‘text’]."">

<img src="".$pic[$i][‘ddimg’]."" width="150" alt="".$pic[$i][‘text’]."" />

</a><h5>".$pic[$i][‘text’]."</h5>

</li>";

}

return $Div;

}

“`

相关问答FAQs

1. 如何在DEDECMS首页调用图片集里的多张图片?

在DEDECMS的首页调用图片集里的多张图片,可以按照以下步骤操作:

1、找到并打开include/common.inc.php文件。

2、将以下代码粘贴到文件末尾:

“`php

function Getimg($aid,$imgwith,$imgheight)

{

global $dsql;

$imgurls = ”;

$row =$dsql>getone( "select imgurls from dede_addonimages where aid=’$aid’ ");

$imgurls= $row[‘imgurls’];//获取字段数据

preg_match_all("/}.+jpg/",$imgurls,$matches);//取出符合条件的

$new_arr=array_unique($matches[0]);//去除数组中重复的值

$pic_num1="

";

foreach($new_arr as $key){

$pic_list.="

";

}

$pic_end="

";

return $pic_num1.$pic_list.$pic_end;//返回结果

}

“`

3、在首页模板中使用以下标签进行调用:

“`html

[field:id function="Getimg(@me,80,80,7)" /]

“`

这里的80和80是图片的宽度和高度,7是要显示的图片数量,如果有多个图片集,可以加上图片集的类目id。

2. 如何在文章内页调用图片集多张图片?

在DEDECMS的文章内页调用图片集多张图片,可以按照以下步骤操作:

1、找到并打开include/common.func.php文件。

2、将以下代码粘贴到文件末尾:

“`php

function Getimgs($aid, $num = 0){

global $dsql;

$imgurls = ”;

$row =$dsql>getone( "Select imgurls Fromdede_addonimages where aid=’$aid’ ");

$imgurls = $row[‘imgurls’];//获取字段数据

preg_match_all("/}.+jpg/",$imgurls,$matches);//取出符合条件的

$new_arr=array_unique($matches[0]);//去除数组中重复的值

$pic_list = "";

foreach($new_arr as $key){

$pic_list .= "<img src=’".$key."’ alt=” />";

}

return $pic_list;//返回结果

}

“`

3、在文章内页模板中使用以下标签进行调用:

“`html

{dede:field.id function="Getimgs(@me)" /}

“`

DedeCMS(织梦CMS)列表页及文章页调用图集图片方法详解

准备工作

1、安装DedeCMS:确保您的网站已安装并配置好DedeCMS。

2、上传图集图片:将图集图片上传到网站的服务器上,通常放置在网站根目录下的“uploads”文件夹中。

调用图集图片步骤

1. 列表页调用图集图片

代码示例


<?php
// 引入DedeCMS函数库
require_once(DEDEINC.'/dede.php');
// 获取图集ID
$albumId = 123; // 假设图集ID为123
// 获取图集图片列表
$query = "SELECT arc.id, arc.title, arc.litpic FROM#@__archives arc WHERE arc.mid = '$albumId'";
$dsql>SetQuery($query);
$dsql>Execute();
while ($row = $dsql>GetArray()) {
    // 输出图集图片
    echo '<img src="' . $row['litpic'] . '" alt="' . $row['title'] . '" />';
}
?>

说明

#@$__archives 是图集内容存储的表。

mid 是图集所属的模型ID。

litpic 是存储图片链接的字段。

2. 文章页调用图集图片

代码示例


<?php
// 引入DedeCMS函数库
require_once(DEDEINC.'/dede.php');
// 获取文章ID
$articleId = 123; // 假设文章ID为123
// 获取文章中包含的图集图片
$query = "SELECT * FROM#@__arctype WHERE id = (SELECT typeid FROM#@__archives WHERE id = '$articleId')";
$dsql>SetQuery($query);
$dsql>Execute();
$row = $dsql>GetArray();
$albumId = $row['mid']; // 获取图集ID
// 获取图集图片列表
$query = "SELECT arc.id, arc.title, arc.litpic FROM#@__archives arc WHERE arc.mid = '$albumId'";
$dsql>SetQuery($query);
$dsql>Execute();
while ($row = $dsql>GetArray()) {
    // 输出图集图片
    echo '<img src="' . $row['litpic'] . '" alt="' . $row['title'] . '" />';
}
?>

说明

#@$__arctype 是文章分类存储的表。

typeid 是文章所属的分类ID,这里用来获取关联的图集ID。

注意事项

确保您的数据库配置正确,能够连接到DedeCMS的数据库。

图集图片的路径需要正确,通常是uploads 文件夹下的路径。

上述代码中的表名和字段名可能因DedeCMS版本不同而有所差异,请根据实际情况调整。

通过以上步骤,您可以在DedeCMS的列表页和文章页中成功调用图集里的所有图片。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1167791.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-10-06 11:53
下一篇 2024-10-06 11:54

相关推荐

  • 如何使用DedeCMS创建并管理我的网站?

    您的网站使用DedeCMS(织梦内容管理系统)构建,这是一个流行的开源PHP网站管理平台,适用于创建和管理动态网站。如果您需要进一步的帮助,请提供更多详细信息。

    2024-11-20
    012
  • DEDECMS中的时间显示如何设置为多少分钟前?

    您的问题似乎不完整,请提供更详细的信息或上下文,以便我能更准确地回答您。如果您是在询问dedecms(一个内容管理系统)的安装、配置、使用或其他相关问题,请具体说明需要了解的内容,我会很乐意为您提供帮助。

    2024-11-08
    020
  • Dede如何查看文章数量?

    在 DedeCMS(织梦内容管理系统)中,查看文章数量的方法如下:,,1. 登录后台管理系统。,2. 进入“内容管理”模块。,3. 选择“文章管理”。,4. 在右侧列表中即可看到所有文章的标题、作者、发布时间等信息。

    2024-11-07
    019
  • 织梦DedeCMS核心目录知识有哪些要点?

    织梦DedeCMS核心目录知识大全背景介绍织梦DedeCMS是一款流行的开源内容管理系统(CMS),广泛用于企业建站和信息管理,了解其目录结构和文件功能对于开发者进行二次开发、安全管理和界面定制至关重要,本文将详细介绍织梦DedeCMS的核心目录结构及其主要文件的作用,以帮助开发者更好地理解和使用该CMS,目录……

    2024-11-02
    0313

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入