网站模板中心

您现在的位置:首页>>织梦大学>>安装使用

dedecms织梦图集每张图片单独调用并自定义样式的办法

来源: 编辑:admin 发布时间:2020-10-17热度:61 ℃
在织梦的开发中,我们有时候需要对 图集 中的每张图片单独输出并自定义样式,如果用织梦的dede:productimagelist调用,还是有***难度的。 下面我们可以对这个类文件进行修改解决这个问...
在织梦的开发中,我们有时候需要对图集中的每张图片单独输出并自定义样式,如果用织梦的dede:productimagelist调用,还是有***难度的。

下面我们可以对这个类文件进行修改解决这个问题:

方法1:找到:include aglibproductimagelist.lib.php  这个文件,在文件中找到如下内容:
1 foreach($images as $row)
2 {
3 中间省略...
4 }

修改为:
01 $GLOBALS['autoindex'] = 1;
02 foreach($images as $row)
03 {
04     $row['autoindex'] =  $GLOBALS['autoindex'];
05     foreach($ctp->CTags as $tagid=>$ctag)
06     {
07         if($ctag->GetName()=='array')
08         {
09             $ctp->Assign($tagid,$row);
10         }
11         else
12         {
13             if(isset($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }
14         }
15     }
16     $revalue .= $ctp->GetResult();
17     $GLOBALS['autoindex']++;
18 }

内容页图集标签调用方法为:
01 {dede:productimagelist}
02     [field:array runphp=yes]
03         if(@me['autoindex'] == 1)
04         {
05             @me = "{@me['autoindex']} - ";
06         }
07         elseif(@me['autoindex'] == 2)
08         {
09             @me = "

{@me['autoindex']} -

"
;
10         }
11         elseif(@me['autoindex'] == 3)
12         {
13             @me = "{@me['autoindex']} - ";
14         }
15         else
16         {
17             @me = "
{@me['autoindex']} -
"
;
18         }
19     [/field:array]
20 {/dede:productimagelist}


用array runphp的方式,让***张图片两边加,第二章加

,第三张加,第四张加



方法2:找到:include aglibproductimagelist.lib.php  这个文件,在文件中找到如下内容:
1 $GLOBALS['autoindex'] = 0;

在此代码下边添加如下代码:
找到:
1 $revalue .= $ctp->GetResult();

在下面加入如下代码:
1 $GLOBALS['autoindex']++;

此方法的原理其实和方法1的是一样的。首先让productimagelist.php 这个文件支持autoindex,然后再通过判断autoindex的值分别调用。比如autoindex为0的时候就调用***张图,依次类推,写法不多说了,有喜欢研究的朋友可以分别验证这两种方法。
Pbootcms问题解决

请点击在线联系我们【点击咨询解决问题】   如果您有任何Pbootcms问题,我们将免费为您写解决教程!

    PB模板网:承接仿站业务,价格200元起!