织梦(dede)arclist标签调用交叉栏目时调不出来

最近用了交叉栏目,发现当为手动指定交叉栏目ID时用arclist标签不能调出相关文章

最后发现是

arclist标签有问题

要修改的地方是:

include/taglib/arclist.lib.php

找到如下:

if($ctag->GetAtt(‘cross‘)==‘1‘)

改为

if($ctag->GetAtt(‘cross‘)!=‘0‘)

再找:

if($arr[‘crossid‘]!=‘‘) $selquery = "Select id,topid From`#@__arctype` where id in(‘{$arr[‘crossid‘]}‘) Andid<>‘{$typeid}‘ Andtopid<>‘{$typeid}‘ ";

改为:

if($arr[‘crossid‘]!=‘‘) $selquery = "Select id,topid From`#@__arctype` where id in({$arr[‘crossid‘]}) Andid<>‘{$typeid}‘ Andtopid<>‘{$typeid}‘ ";

(这一行只去了一对单引号,应该是程序员手误多出来了)

就可以了

分析:

从数据库可以看出

当栏目为不交叉时cross的值为0

当栏目为自动获取同名栏目时cross的值为1

当栏目为手动指定ID时cross的值为2

显然if($ctag->GetAtt(‘cross‘)==‘1‘)是错的,在手动指定ID时$CrossID始终为空

时间: 2024-10-05 23:30:25

织梦(dede)arclist标签调用交叉栏目时调不出来的相关文章

织梦dede groupthread标签调用说明

标签名称:groupthread功能说明:圈子主题调用标签适用范围:全局使用基本语法:{dede:groupthread gid='0' orderby='dateline' orderway='desc' row='12' titlelen='30'}<li><a href='[field:groupurl/]' target="_blank">[[field:groupname function="cn_substr(@me,10)"/]

织梦dede:arclist按照自定义字段的条件调用相关文章

dedecms织梦dede:arclist按照自定义字段的条件调用相关文章,这对于想要在首页调用某个自定义字段的文章的同学来讲,非常不错 打开 /include/taglib/arclist.lib.php 找到 //关键字条件 在它的上面加入 //自定义字段关键字条件 if($ctag->GetAtt('addk')!='') { $addkeywords = explode(',' , trim($ctag->GetAtt('addk'))); $addf = $ctag->GetA

织梦DEDEcms5.7解决arclist标签调用副栏目文章

使用arclist标签调用文章的时候才发现,根本无法调用相关文章. 下面给出解决办法,希望帮到需要的人. 找到/include/taglib/arclist.lib.php文件然后打开.然后在大约300行代码的位置.将下面的代码 if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')'; else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.

织梦dede:channelartlist 标签在列表页没法调用软件下载地址softlinks

dede:channelartlist 虽然比较好用,但只可嵌套dede:arclist 标签,如果dede:arclist 标签中还有{dede:link islocal='1' text='本地下载'} ,则没法解析.需要在列表页单独用dede:arclist 标签,而不可再嵌套在dede:channelartlist 标签之内.

dedecms织梦dede:sql标签,在dedecms中嵌套php语法等一些方法

很NB很强大的语句,用了他你可以在模板页面写任何php语句了 {dede:php} $thisid = $refObj->Fields['id']; $row = $dsql->GetOne('select v_type,video from `#@__addonarticle` where aid='.$thisid); if($row["v_type"]=="swf"){ echo "结果一";}else{ echo "

织梦dede:list标签在列表页同一文章显示两次的解决方法

在列表页用{dede:list}标签调用文章的时候出现了同一篇文章显示两次的问题,经过一天的奋战最后终于解决了,下面CMS集中营站长简单说下我的解决过程来供各位学友参考:1.怀疑是不是每次添加都会自动生成2篇文章,可是查看了栏目下的文章后发现只有一篇.2.怀疑是dedecms 模板调用标签或模板中JS冲突引起的问题,于是将所有代码删除,只留有{dede:list pagesize ='10'}<a href="[field:arcurl/]">[field:title/]&

DEDE织梦CMS时间标签调用集绵

常用dedeCMS织梦标签,建站的同仁可能经常被时间格式所困扰,很多人还停留在使用一牛人站长编写的超级标签来获取时间的写法.在这里,给大家详细的解释一下DEDE的时间标签,并分享一些应用的小技巧给大家. 首先看一下dede默认模板的时间标签的组成:http://www.26shouji.com/ [field:pubdate function="MyDate('m-d',@me)"/] 首先是声明field:pubdate就是说这是底层模板的发布时间标签,而后边的函数代表的就是时间格式

织梦dede:arclist输出取消换行符

织梦在使用dede:arclist输出文档时,会自动有换行符,想要去掉的同学可以这样做 打开 /include/taglib/arclist.lib.php 找到 $artlist .= $liststr."\r\n"; 改成 $artlist .= $liststr; 有2处,记得都要改哦 原文地址:https://www.cnblogs.com/dedevip/p/9901222.html

织梦dede autochannel标签使用说明

标签名称:autochannel 功能说明:指定排序位置的单个栏目的链接 适用范围:全局使用 基本语法: {dede:autochannel partsort='' typeid=’’}{/dede:autochannel} 参数说明: partsort = '0' 栏目所在的排序位置 typeid=’0’ 获取单个栏目的顶级栏目 底层模板字段: typename,typelink(仅表示栏目的网址) 原文地址:https://www.cnblogs.com/yunkezan/p/1135143