返回旧版| 微信建站| 建站之家论坛| 我要建站 | 建站学习 | 加入收藏
PHPCMS当前位置:首页 > cms教程 > 综合cms > PHPCMS > 正文

phpcms v9手机站不支持组图($pictureurls)的修改(简单二次开发)

发布时间:2016-04-26 08:20:07   来源:   点击:
phpcms v9自带的手机门户网站,有时候我们需要用到组图功能$pictureurls,我在做的时候发现,如果$pictureurls中只有一张图片会正常显示,但是如果有两张或两张以上的图片的时候,就会出现错误,调用组图的代码为:
  1. {loop $pictureurls $k $v} 
  2. <img src="{$v[url]}"  width="380" height="286"  alt="{$title}"/> 
  3. {/loop} 
当有多个图片时:


此时我们会发现,组图的图片路径没有被真正读取,所以就得需要简单的二次修改了!

打开phpcms\modules\wap\index.php,找到大概121-160行
  1. if($pictureurls) { 
  2.             $pictureurl = pic_pages($pictureurls); 
  3.             $isshow = 0;             
  4.             //进行图片分页处理       
  5.             $PIC_POS = strpos($pictureurl, '[page]'); 
  6.             if($PIC_POS !== false) { 
  7.                 $this->url = pc_base::load_app_class('wap_url''wap'); 
  8.                 $pictureurls = array_filter(explode('[page]', $pictureurl)); 
  9.                 $pagenumber = count($pictureurls); 
  10.                 if (strpos($pictureurl, '[/page]')!==false && ($CONTENT_POS<7)) { 
  11.                     $pagenumber--; 
  12.                 } 
  13.                 for($i=1; $i<=$pagenumber; $i++) { 
  14.                     $pageurls[$i] = $this->url->show($id, $i, $catid, $typeid); 
  15.                 } 
  16.                 $END_POS = strpos($pictureurl, '[/page]'); 
  17.                 if($END_POS !== false) { 
  18.                     if(preg_match_all("|\[page\](.*)\[/page\]|U", $pictureurl, $m, PREG_PATTERN_ORDER)) { 
  19.                         foreach($m[1] as $k=>$v) { 
  20.                             $p = $k+1; 
  21.                             $titles[$p]['title'] = strip_tags($v); 
  22.                             $titles[$p]['url'] = $pageurls[$p][0]; 
  23.                         } 
  24.                     } 
  25.                 } 
  26.                  
  27.                 //当不存在 [/page]时,则使用下面分页 
  28.                 $pages = content_pages($pagenumber,$page, $pageurls, 0); 
  29.                 //判断[page]出现的位置是否在第一位  
  30.                 if($CONTENT_POS<7) { 
  31.                     $pictureurl = $pictureurls[$page]; 
  32.                 } else { 
  33.                     if ($page==1 && !empty($titles)) { 
  34.                         $pictureurl = $title.'[/page]'.$pictureurls[$page-1]; 
  35.                     } else { 
  36.                         $pictureurl = $pictureurls[$page-1]; 
  37.                     } 
  38.                 }        
  39.             }            
  40.         } 
这段代码意思是当$pictureurls存在时,需要对$pictureurls进行分页处理,这样就导致了组图读取不出来的情况,如果你的组图属性属于自定义的属性,你可以对$pictureurls重新命名,比如改成$pictureurls2等等,还有一种方法比较干脆就是直接注释掉或者删除掉以上这些代码,这样就不需要对$pictureurls做任何处理,直接读取出来,但是这样也就是丧失了图片分页功能(一般也没多大用,分页可以用幻灯片效果实现),ok 完成!


相关栏目
热门文章
最新图文
评论排行
版权所有:郑州腾石网络科技有限公司 备案信息:豫ICP备18019117号
站长QQ:2863868475 业务合作咨询:15137100750(同微信)
本站所有投放的广告是有其他网站提供,不代表本站立场,同时网站首页广告位对外出租详情咨询本站站长!同时欢迎广大站长加入个人建站团队
  • 建站客服
  • CMS仿站
  • CMS学习
  • 技术交流群:336572814