GVKun编程网logo

arclist标签调用副栏目新闻的办法 for dedecms

31

如果您对arclist标签调用副栏目新闻的办法fordedecms感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于arclist标签调用副栏目新闻的办法fordedecms的

如果您对arclist标签调用副栏目新闻的办法 for dedecms感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于arclist标签调用副栏目新闻的办法 for dedecms的详细内容,并且为您提供关于*新DEDECMS织梦搜索页调用arclist标签的教程、arclist标签在新闻页栏目页调用所有(全站)栏目最新新闻热门新闻的办法、arclist标签调用副栏目文章的方法 for dedecms、DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用的有价值信息。

本文目录一览:

arclist标签调用副栏目新闻的办法 for dedecms

arclist标签调用副栏目新闻的办法 for dedecms

 

*近一段时间以来,有不少时间都在折腾DEDECMS,对其进行了不少的优化工作,以便其适应我的应用要求。在这其中,也遇到了不少的问题。譬如:DEDECMS根据副栏目进行新闻调用的问题。
DEDECMS中一个新闻可以同时属于两个栏目,即一个主栏目一个副栏目,{dede:arclist} 属性中可以通过typeid进行主栏目有效性筛选,但是有时我们却想根据副栏目进行筛选,查了dedecms的在线用户手册发现没有此功能,*后搜索到一个有效地解决方案。只需修改标签对应的源文件。

查找 dedecmsROOT/include/taglib/arclist.lib.php 文件,大概在第212行代码处。
if($CrossID=='') $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).','.$CrossID.')';

替换为:
if($CrossID=='')
$orwheres[] = ' typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')';
else
$orwheres[] = ' typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')';
示例:{dede:arclist typeid=’2,3,4′}….{/dede:arclist}

通过以上方案,有效地解决了DEDECMS*新版本V5.6正式版(2010-08-18)(包括在此前的版本),不支持通过arclist标签调用副栏目新闻的问题。

本文章网址:http://www.ppssdd.com/code/14678.html。转载请保留出处,谢谢合作!

*新DEDECMS织梦搜索页调用arclist标签的教程

*新DEDECMS织梦搜索页调用arclist标签的教程

 

打开include/arc.searchview.class.php

  查找:

require_once(DEDEINC."/taglib/hotwords.lib.php"); require_once(DEDEINC."/taglib/channel.lib.php");

  在下面加入:

require_once(DEDEINC."/taglib/arclist.lib.php"); require_once(DEDEINC."/taglib/channelartlist.lib.php");

  找到:

else if($tagname=="hotwords") { $this->dtp->Assign($tagid,lib_hotwords($ctag,$this)); }

  在下面插入:

else if($tagname=="arclist") { $this->dtp->Assign($tagid,lib_arclist($ctag,$this)); } else if($tagname=="channelartlist") { $this->dtp->Assign($tagid,lib_channelartlist($ctag,$this)); }

  这样就可在dedecms织梦搜索页面使用arclist和channelartlist标签调用数据了。

本文章网址:http://www.ppssdd.com/code/13435.html。转载请保留出处,谢谢合作!

arclist标签在新闻页栏目页调用所有(全站)栏目最新新闻热门新闻的办法

arclist标签在新闻页栏目页调用所有(全站)栏目最新新闻热门新闻的办法

 

新闻介绍

办法:typeid='top' 或者typeid='asdas'任意字母不为空不为数字 写上这一个属性就可以了

{dede:arclist orderby='pubdate'  titlelen='28' row='7' typeid='top' }
如果是在新闻页 这篇新闻又是Z新刚发布的,那么Z新新闻里就会包含这篇新闻,想要去除这篇新闻,可以加limit限制
{dede:arclist orderby='pubdate'  titlelen='28' row='7' typeid='top'  limit='1,7'}
当然如果不是Z新的新闻,再次生成的时候还是有可能和当篇新闻重复的

arclist标签在新闻页栏目页调用所有(全站)栏目新闻的办法
今天用到在新闻页调用全站Z新新闻
搜了下没有找到解决的办法
看了下arclist.lib.php这个文件
大概在144行的这一句
if(!empty($typeid) && $typeid != 'top')
让我知道了 原来arclist标签的typeid属性还有top 本文章网址:http://www.ppssdd.com/code/26928.html。转载请保留出处,谢谢合作!

arclist标签调用副栏目文章的方法 for dedecms

arclist标签调用副栏目文章的方法 for dedecms

最近一段时间以来,有不少时间都在折腾Dedecms,对其进行了不少的优化工作,以便其适应我的应用要求。在这其中,也遇到了不少的问题。譬如:Dedecms根据副栏目进行文章调用的问题。
Dedecms中一个文章可以同时属于两个栏目,即一个主栏目一个副栏目,{dede:arclist} 属性中可以通过typeid进行主栏目有效性筛选,但是有时我们却想根据副栏目进行筛选,查了Dedecms的在线用户手册发现没有此功能,最后搜索到一个有效地解决办法。只需修改标签对应的源文件。

查找 DedecmsROOT/include/taglib/arclist.lib.PHP 文件,大概在第212行代码处。
if($CrossID=='') $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).','.$CrossID.')';

替换为:
if($CrossID=='')
$orwheres[] = ' typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')';
else
$orwheres[] = ' typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')';
示例:{dede:arclist typeid=’2,3,4′}….{/dede:arclist}

通过以上办法,有效地解决了Dedecms最新版本v5.6正式版(2010-08-18)(包括在此前的版本),不支持通过arclist标签调用副栏目文章的问题。

DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用

DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用

 

arclist标签无法调用副栏目新闻的解决方案

Z近发现DEDECMS/' target='_blank'>dedecms中的新闻在选择幅栏目后,

在其对应的幅栏目列表中可以显示该新闻,但在arclist 标签中却无法显示该新闻,

网上找了很多,解决方案都一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。

修正后的写法如下。


打开/include/taglib/arclist.lib.php,我目前用的Z新版 5.7 SP1,

代码约位于295-296行。查找以下两行代码。

if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')'; else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';  

将其替换成以下代码。

if($CrossID=='') $orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).') OR arc.typeid2 IN ('.GetSonIds($typeid).')) '; else $orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.') OR arc.typeid2 IN ('.GetSonIds($typeid).','.$CrossID.')) ';  

OK,这样就改完了,保存后如果你是生成静态的,请生成相关的。如果是动态的,请更新系统缓存。然后就可以看到效果了。

===============================================================================

以上办法有个缺点arclist 标签 就是只能有在显示两处位置 

下面办法经测试可以个 不知道三个以上可以不可以

用arclist标签调用新闻的时候才发现,根本无法调用相关新闻。

下面给出解决方案,希望帮到需要的人。

找到/include/taglib/arclist.lib.php文件然后打开。然后在大约300行代码的位置。将下面的代码

if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')'; else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';  

替换成

if($CrossID=='') $orwheres[] = " (arc.typeid in (".GetSonIds($typeid).") or arc.typeid2 in(".GetSonIds($typeid).") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%' )"; else $orwheres[] = " (arc.typeid in (".GetSonIds($typeid) .",".$CrossID.") or arc.typeid2 in (".GetSonIds($typeid).",".$CrossID.") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%')";  

本文章网址:http://www.ppssdd.com/code/26931.html。转载请保留出处,谢谢合作!

我们今天的关于arclist标签调用副栏目新闻的办法 for dedecms的分享已经告一段落,感谢您的关注,如果您想了解更多关于*新DEDECMS织梦搜索页调用arclist标签的教程、arclist标签在新闻页栏目页调用所有(全站)栏目最新新闻热门新闻的办法、arclist标签调用副栏目文章的方法 for dedecms、DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用的相关信息,请在本站查询。

本文标签: