当前位置:首页 > phpcms > 正文内容

phpcms v9解决lists标签中,加上where后其他条件失效的问题

zhao_99204年前 (2021-06-17)phpcms3861

问题描述:

{pc:content action="lists" catid="$catid" where="posids`!='0'" thumb="1" num="10"}
 
{php $where = "typeid=$catid"}
{pc:content action="lists" catid=86  num="5" order="listorder DESC" moreinfo="1" where="$where"}

 

 

发现不是调用当前栏目而是全部栏目的,并且不管有没有缩略图都显示出来,在PHPCMS官方论坛搜索了一下,发现这个问题存在很久了。今天我们说一下怎么修复吧!

打开/phpcms/modules/content/classes/目录下的content_tag.class.php这个文件,把下面的代码(大概第63行)

 

  1. if(isset($data['where'])) {
    $sql = $data['where'];
    } else {
    $thumb = intval($data['thumb']) ? " AND thumb !=      ''" : '';
    if($this->category[$catid]['child']) {
    $catids_str = $this->category[$catid]['arrchildid'];
    $pos = strpos($catids_str,',')+1;
    $catids_str      = substr($catids_str, $pos);
    $sql = "status=99 AND      catid IN ($catids_str)".$thumb;
    } else {
    $sql = "status=99 AND      catid='$catid'".$thumb;
    }
    }
    替换为下面的代码即可:
     
    if(isset($data['where'])) {
    $where = (isset($data['where'])&&(!empty($data['where'])))?' AND '.$data['where']:'';
    $thumb = intval($data['thumb']) ? " AND thumb !=      ''" : '';
    if($this->category[$catid]['child']) {
    $catids_str = $this->category[$catid]['arrchildid'];
    $pos = strpos($catids_str,',')+1;
    $catids_str      = substr($catids_str, $pos);
    $sql = "status=99".$where." AND catid IN      ($catids_str)".$thumb;
    } else {
    $sql = "status=99".$where." AND      catid='$catid'".$thumb;
    }
    } else {
    $thumb = intval($data['thumb']) ? " AND thumb !=      ''" : '';
    if($this->category[$catid]['child']) {
    $catids_str = $this->category[$catid]['arrchildid'];
    $pos = strpos($catids_str,',')+1;
    $catids_str      = substr($catids_str, $pos);
    $sql = "status=99 AND      catid IN ($catids_str)".$thumb;
    } else {
    $sql = "status=99 AND      catid='$catid'".$thumb;
    }
    }

本文转载: http://www.22ba.com/article/PHPCMS305.html


扫描二维码推送至手机访问。

版权声明:本文由心定义前端发布,如需转载请注明出处。

本文链接:https://naturexs.com/index.php/post/4.html

分享给朋友:

相关文章

[转载]将phpcms v9默认不分页方式修改为默认自动分页方式的方法

实际上整个操作还是比较简单的!但是很多人可能会遇到这个问题,这里一并说下!由于某些需要,需要修改默认的分页方式!目前来讲,只能通过修改源代码的方式!希望以后可以升级下,升级为后台控制方式,这样就方便多了!V9 的 【分页方式】 默认是“不...