本篇文章给大家谈谈织梦新闻列表arclist调用嵌套tag标签教程,以及织梦内容页调用栏目名称的知识点,同时本文还将给你拓展DEDEarclist标签无法调用副栏目新闻的解决方案arclist标签调用
本篇文章给大家谈谈织梦新闻列表arclist调用嵌套tag标签教程,以及织梦内容页调用栏目名称的知识点,同时本文还将给你拓展DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用、DEDE 教程:最新织梦搜索页如何调用 arclist 标签?、dede:tag 织梦源码新闻页调用全站*新tag标签、dedecms织梦arclist标签调用副栏目的新闻等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- 织梦新闻列表arclist调用嵌套tag标签教程(织梦内容页调用栏目名称)
- DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用
- DEDE 教程:最新织梦搜索页如何调用 arclist 标签?
- dede:tag 织梦源码新闻页调用全站*新tag标签
- dedecms织梦arclist标签调用副栏目的新闻
织梦新闻列表arclist调用嵌套tag标签教程(织梦内容页调用栏目名称)
使用织梦提供的php接口:[field:id runphp=yes] ......[/field:id]
完整的标签是:
{dede:arclist} <p>标签 : [field:id runphp=yes] global $dsql; $tags = ''; $query = "SELECT tag FROM `dede_taglist` WHERE aid='@me' "; $dsql->Execute('tag',$query); while($row = $dsql->GetArray('tag')) { $tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a>, "; } @me=$tags; [/field:id]</p> {/dede:arclist}测没有问题
下面是伪静态,可以不用看,自己测试一下。
还有是我自己弄的伪静态那个,调用了两个字段
[field:id runphp=yes]global $dsql;$tags = '';$query = "SELECT tid,tag FROM `dede_taglist` WHERE aid='@me' ";$dsql->Execute('tid,tag',$query);while($row = $dsql->GetArray('tid,tag')){$tags .= "<a href='/t-".urlencode($row['tid']).".html'>".$row['tag']."</a>";}@me=$tags;[/field:id]
总结:
如果你会php,那么,通过织梦提供的runphp=yes就可以调用很多不能嵌套的问题,这个功能特别有用,当然,一般的人也用不到这个,对于仿站,或是做二开也许会用到。
本文章网址:http://www.ppssdd.com/code/11176.html。转载请保留出处,谢谢合作!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。转载请保留出处,谢谢合作!
DEDE 教程:最新织梦搜索页如何调用 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");
找到:
elseif($tagname=="hotwords"){
$this->dtp->Assign($tagid,lib_hotwords($ctag,$this));}
在下面插入:
elseif($tagname=="arclist"){
$this->dtp->Assign($tagid,lib_arclist($ctag,$this)); }
elseif($tagname=="channelartlist"){
$this->dtp->Assign($tagid,lib_channelartlist($ctag,$this)); }
这样就可在 dedecms 织梦搜索页面使用 arclist 和 channelartlist 标签调用数据了。
dede:tag 织梦源码新闻页调用全站*新tag标签
首页、栏目页、新闻页调用全站*新tag标签:{dede:tag row='50' sort='new' getall='1'} <div><a href='[field:link/]'title='[field:tag /]' target="_blank">[field:tag /]</a></div> {/dede:tag}
row:调用条数。
sort:排序方式。 参数有:month,rand,week, new
getall:获取类型。 0为当前内容详细页或列表页tag,1为获取全站tag 本文章网址:http://www.ppssdd.com/code/9678.html。转载请保留出处,谢谢合作!
dedecms织梦arclist标签调用副栏目的新闻
织梦DEDECMS的功能已经特别强大,但是需要也是在不断需要的,我们有时也需要去更改一下系统的某些功能,
比如说我今天就需要arclist标签能调用副栏目的新闻,只需要更改/include/taglib/arclist.lib.php 。
把
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.'))';
}
之前我没有加括号,造成了很严重的问题。
dede arclist标签调用副栏目的新闻 ,
修改完成后是下面这样,
//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.'))';
}
本文章网址:http://www.ppssdd.com/code/14021.html。转载请保留出处,谢谢合作!今天关于织梦新闻列表arclist调用嵌套tag标签教程和织梦内容页调用栏目名称的介绍到此结束,谢谢您的阅读,有关DEDE arclist标签无法调用副栏目新闻的解决方案arclist标签调用、DEDE 教程:最新织梦搜索页如何调用 arclist 标签?、dede:tag 织梦源码新闻页调用全站*新tag标签、dedecms织梦arclist标签调用副栏目的新闻等更多相关知识的信息可以在本站进行查询。
本文标签: