QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

PHPCMS

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

 admin  2016-04-19 17:32:13
问题描述:
{pc:content action="lists" catid="$catid" where="posids`!='0'" thumb="1" num="10"}
发现不是调用当前栏目而是全部栏目的,并且不管有没有缩略图都显示出来,在PHPCMS官方论坛搜索了一下,发现这个问题存在很久了。今天我们说一下怎么修复吧!

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

  1. f(isset($data['where'])) { 
  2. $sql = $data['where']; 
  3. else { 
  4. $thumb = intval($data['thumb']) ? " AND thumb != ''" : ''
  5. if($this->category[$catid]['child']) { 
  6. $catids_str = $this->category[$catid]['arrchildid']; 
  7. $pos = strpos($catids_str,',')+1; 
  8. $catids_str = substr($catids_str, $pos); 
  9. $sql = "status=99 AND catid IN ($catids_str)".$thumb; 
  10. else { 
  11. $sql = "status=99 AND catid='$catid'".$thumb; 

替换为下面的代码即可。


  1. if(isset($data['where'])) { 
  2. $where = (isset($data['where'])&&(!empty($data['where'])))?' AND '.$data['where']:''
  3. $thumb = intval($data['thumb']) ? " AND thumb != ''" : ''
  4. if($this->category[$catid]['child']) { 
  5. $catids_str = $this->category[$catid]['arrchildid']; 
  6. $pos = strpos($catids_str,',')+1; 
  7. $catids_str = substr($catids_str, $pos); 
  8. $sql = "status=99".$where." AND catid IN ($catids_str)".$thumb; 
  9. else { 
  10. $sql = "status=99".$where." AND catid='$catid'".$thumb; 
  11. else { 
  12. $thumb = intval($data['thumb']) ? " AND thumb != ''" : ''
  13. if($this->category[$catid]['child']) { 
  14. $catids_str = $this->category[$catid]['arrchildid']; 
  15. $pos = strpos($catids_str,',')+1; 
  16. $catids_str = substr($catids_str, $pos); 
  17. $sql = "status=99 AND catid IN ($catids_str)".$thumb; 
  18. else { 
  19. $sql = "status=99 AND catid='$catid'".$thumb; 





¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《解决lists标签中,加上where后其他条件失效的问题》发布于石头博客文章,作者:admin,如若转载,请注明出处:https://www.pweb123.com/cms/phpcms/635.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序