此处将为大家介绍关于织梦CMS,当前栏目高亮显示的详细内容,并且为您解答有关织梦栏目内容不显示的相关问题,此外,我们还将为您介绍关于Dedecms(织梦CMS)子栏目高亮操作、DedeCms列表页内容
此处将为大家介绍关于织梦CMS,当前栏目高亮显示的详细内容,并且为您解答有关织梦栏目内容不显示的相关问题,此外,我们还将为您介绍关于Dedecms(织梦CMS)子栏目高亮操作、DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目、dedecms栏目页内容详细页栏目高亮和当前栏目调用二三级栏目、dedecms织梦channelartlist标签当前栏目高亮的有用信息。
本文目录一览:- 织梦CMS,当前栏目高亮显示(织梦栏目内容不显示)
- Dedecms(织梦CMS)子栏目高亮操作
- DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目
- dedecms栏目页内容详细页栏目高亮和当前栏目调用二三级栏目
- dedecms织梦channelartlist标签当前栏目高亮
织梦CMS,当前栏目高亮显示(织梦栏目内容不显示)
不多说废话,直接上代码。
{dede:php}
$GLOBALS['thisid'] = intval($refObj->Fields['id']);
{/dede:php}
<ul>
<li><a href=http://www.dede58.com/a/dedejq/"/" target="_blank" {dede:php} if(!$GLOBALS['thisid']) echo ""; {/dede:php}><span>HOME</span><br />首 页</a></li>
{dede:channel type='top' row='7' }
<li><a href=http://www.dede58.com/a/dedejq/"[field:typeurl/]" [field:id runphp='yes'] if (@me == $GLOBALS['thisid'] ) @me = "" ;[/field:id] target="_blank" ><span>[field:alias/]</span><br />[field:typename/]</a></li>
{/dede:channel}
</ul>
以上是全部代码。下面进行说明
{dede:php} $GLOBALS['thisid'] = intval($refObj->Fields['id']); {/dede:php}
获取当前栏目ID。
[field:id runphp='yes'] if (@me == $GLOBALS['thisid'] ) @me = "" ;[/field:id]
对dede:channel标签运行PHP,如果ID相等,输出
本文章网址:http://www.ppssdd.com/code/13919.html。转载请保留出处,谢谢合作!Dedecms(织梦CMS)子栏目高亮操作
前言
继续来说说织梦(坑爹)CMS的问题吧。
场景:
企业动态下,分别有如下六个栏目:
要求点击到哪个栏目,哪个栏目则高亮显示
本来嘛,这不是so easy吗?(这里指PHP的其他cms)
但是对于dede,我上网看了半天,标签调用方法都尝试了,貌似没戏,当然,涉及到改源码一律忽略,没必要。(浪费时间,增加风险)
那么问题来了,怎么在短时间内解决这个问题呢?
方案
这里能想到最简单省事的就是使用Js了,当然,有人说你在栏目中判断id不就行了吗?是啊,但是id不能写死啊,否则后期用户更改栏目岂不是不灵活了。
好了,说正事。
下面是我上面调用的第一张图的html代码:
<divcurrent_typedir="{dede:field name=''typedir''/}">
<ul>
{dede:channelartlist typeid="14"}
<li typedir="{dede:field name=''typedir''/}">
<a href="{dede:field name=''typeurl''/}">
<div>{dede:field name=''typename''/}</div>
<span> </span>
</a>
</li>
{/dede:channelartlist}
</ul>
</div>
结构很简单,就是一个栏目列表的循环,循环中设置一个属性,获取到当前循环到的栏目的typedir(栏目存放目录),然后还获取到当前页面的typedir,下面用js进行比较,起码typedir是不会错的。
下面是js的代码,因为还涉及到hover的效果,所以代码中有一部分是hover的:
$(function(){
// 初始效果
checkMenu();
// 移动效果
$(".neibu_til li").hover(function(){
$(this).siblings().find("span").attr("class","");
$(this).find("span").attr("class","ing");
},function(){
$(this).find("span").attr("class","");
checkMenu();
});
function checkMenu()
{
var the_cur_dir = $(''.neibu_til'').attr(''current_typedir'').split(''/'').pop();
$(".neibu_til").find("li").each(function(){
var dir_last = $(this).attr(''typedir'').split(''/'').pop();
if (dir_last == the_cur_dir) {
$(this).find(''span'').attr(''class'',''ing'');
}
});
}
})
总结
好了,长话短说,就这么多,希望在这个不愉快的周六能给大家带来些许愉快吧。
DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目
在处理企业站的时候,经常发现要调用二三级栏目栏目,且需要高亮显示,具体实现方法如下。
1、打开 \include\taglib\channelartlist.lib.PHP 找到
改成
TypeLink->TypeInfos['id']) ? GetTopid($refObj->TypeLink->TypeInfos['id']) : 0 ); $tpsql = " reid='$typeid' AND ishidden<>1 "; } else { $tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 "; }
2、打开 \include\taglib\channel.lib.PHP 找到
改成
3、后台-系统-其它选项 模板引擎禁用标签 去掉PHP
调用代码如下:
-
{dede:PHP}
$GLOBALS['thisid'] = intval($refObj->Fields['typeid']);
$GLOBALS['reid'] = intval($refObj->Fields['reid']);
$GLOBALS['topid'] = intval($refObj->Fields['topid']);
{/dede:PHP}
{dede:channelartlist type=son}
- {dede:field.typename/}
-
{dede:channel type=son noself=yes}
- [field:typename/] {/dede:channel}
至此,全部完成。
dedecms栏目页内容详细页栏目高亮和当前栏目调用二三级栏目
在处理公司站的时候,经常发现要调用二三级栏目栏目,且需要高亮显示,具体实现办法如下。
1、打开 \include\taglib\channelartlist.lib.php 找到
$tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 ";
改成
if($type=='son')
{
$typeid = ( !empty($refObj->TypeLink->TypeInfos['id']) ? GetTopid($refObj->TypeLink->TypeInfos['id']) : 0 );
$tpsql = " reid='$typeid' AND ishidden<>1 ";
}
else
{
$tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 ";
}
2、打开 \include\taglib\channel.lib.php 找到
if($type=='son' && $reid!=0 && $totalRow==0
改成
if($type=='son' && $reid!=0 && $totalRow==0 && $noself=='')
3、后台-系统-其它选项 源码引擎禁用标签 去掉php
调用代码如下:
<ul>
{dede:php}
$GLOBALS['thisid'] = intval($refObj->Fields['typeid']);
$GLOBALS['reid'] = intval($refObj->Fields['reid']);
$GLOBALS['topid'] = intval($refObj->Fields['topid']);
{/dede:php}
{dede:channelartlist type=son}
<li{dede:field.typeid runphp=yes}(@me==$GLOBALS['thisid']||@me==$GLOBALS['reid']||@me==$GLOBALS['topid'])? @me='':@me='';{/dede:field.typeid}><a href='{dede:field.typeurl/}' >{dede:field.typename/}</a></li>
<ul>
{dede:channel type=son noself=yes}
<li[field:id runphp=yes](@me==$GLOBALS['thisid'])? @me='':@me='';[/field:id]><a href='[field:typelink /]' title='[field:typename/]'>[field:typename/]</a></li>
{/dede:channel}
</ul>
{/dede:channelartlist}
</ul>
至此,全部完成。
本文章网址:http://www.ppssdd.com/code/10606.html。转载请保留出处,谢谢合作!dedecms织梦channelartlist标签当前栏目高亮
关于织梦CMS,当前栏目高亮显示和织梦栏目内容不显示的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于Dedecms(织梦CMS)子栏目高亮操作、DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目、dedecms栏目页内容详细页栏目高亮和当前栏目调用二三级栏目、dedecms织梦channelartlist标签当前栏目高亮的相关信息,请在本站寻找。
本文标签: