帝国CMS新闻列表页图文混排显示、无缩略图不显示的优化代码帝国CMS新闻列表页图文混排显示、无缩略图不显示的优化代码

生命不息,
折腾不止!

帝国CMS新闻列表页图文混排显示、无缩略图不显示的优化代码

在客户的设计需求中,使用帝国CMS开源系统制作,要求栏目列表页当前文章没有缩略图时,则不显示无图片类提示,直接显示标题和文章简介,具体效果如下:

 

图文混排.png

 

以上效果,如果使用原始程序代码是无法实现的,所以在这里就需要用到帝国CMS提供的“使用程序代码”功能,来实现我们的进一步要求,具体方法如下:

在帝国CMS后台找到列表页模板,到“修改”项,编辑当前新闻列表模板,在编辑过程右我们仔细观察一下,会发现帝国CMS提供有“使用程序代码功能”,如下图:

 

使用程序代码.png

 

勾选上图“程序代码”选项,然后将下面我们提供的代码复制到列表内容模板:

if(empty($r[titlepic]))
{
$titlepic=' ';
}
else
{
$titlepic='<div class="article-img left"><a href="[!--titleurl--]"><img src="[!--titlepic--]"/></a></div>'; //图片前端显示样式
}
//-----------------上面的判断是否有图片-------------------

//----------调取 TAG 关键字起始行,如果你没有这个需要下方删掉-----------
$tagstr='';
$tsql=$empire->query("select tagid from {$dbtbpre}enewstagsdata where id='$r[id]' and classid='$r[classid]' ");
while($tr=$empire->fetch($tsql)){
        $tt=$empire->fetch1("select * from {$dbtbpre}enewstags where tagid=".$tr['tagid']." limit 1");
        if(!$tt['tagid']){
                continue;
        }else{
                //tagid式的动态链接,采用以下1行代码
                //$tagslink=$public_r['newsurl'].'e/tags/?tagid='.$tt['tagid'];
        }
        $tagstr.='<li><em><a href="[!--news.url--]tags-'.$tt['tagname'].'-0.html" title="'.$tt['tagname'].'" target="_blank">'.$tt['tagname'].'</a></em></li>';//前端TAG格式
}
if(empty($tt[tagid]))
{
$tagstr.="<li><em><a>暂无标签</a></em></li>";
}
$nsmalltext=$r[smalltext]; 
$ntext=strip_tags($nsmalltext);//去除内容简介里的HTML标签 
$newtext=esub($ntext,140,'...') ;//限制140字符
if($no>15)
{
$cs='style="display:none;"';        
}
else{
$cs="";
}
//----------调取 TAG 关键字 END 如果你没有这个需要上面就省略掉-----------

//---------- 最终前段显示样式 -----------
$listtemp='<li class="clear_fix">
                        '.$titlepic.'  //图片前段显示位置,若无图片则为空。
                        <div class="article-text left">
              <dl>
                <dt><a href="[!--titleurl--]" target="_blank">[!--oldtitle--]</a></dt>
                <dd>'.$newtext.'...</dd>
              </dl>
              <div class="article-text-tag clear_fix">
                <span class="left clear_fix"><i class="web-icon time-icon left"></i>[!--newstime--]</span>
                                <ul class="left clear_fix">
                                    '.$tagstr.'
                                  </ul>
                              </div>
            </div>
          </li>';

这里DIV CSS样式表不再一一提供,按自身模板需要请自行编写样式表,最后一步完成保存模板,到数据更新页下,重新生成列表页模板即可。

调取 TAG 关键字,请参考 帝国cms调用tags的方法

赞() 打赏
未经允许不得转载:我的博客 » 帝国CMS新闻列表页图文混排显示、无缩略图不显示的优化代码
分享到: 更多 (0)

评论 4

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    这是评论测试

    DUX主题小秘7个月前 (09-17)回复
    • 飞歌导航东方红烦得很

      themebetter主题小秘3周前 (04-08)回复
  2. #2

    这是新的一条评论

    DUX主题小秘7个月前 (09-17)回复
  3. #3

    未来一年,中国的移动支付市场会是什么样?

    DUX主题小秘7个月前 (09-17)回复

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

大前端WP主题 更专业 更方便

联系我们 联系我们