在当今互联网时代,网站内容管理系统(CMS)已经成为企业、个人和机构构建网站的首选工具。DedeCMS作为国内最受欢迎的CMS之一,凭借其强大的功能和易用性,赢得了广大用户的青睐。而在DedeCMS中,ChannelID无疑是一个至关重要的概念。本文将带您深入了解DedeCMS ChannelID,揭开其神秘面纱。
一、什么是DedeCMS ChannelID?
ChannelID,即频道ID,是DedeCMS中用于标识和管理不同频道内容的一个唯一标识符。简单来说,每个频道都有一个对应的ChannelID,通过这个ID,我们可以轻松地对频道进行操作,如添加、修改、删除等。
二、ChannelID的作用
1. 区分不同频道:在DedeCMS中,一个网站可以包含多个频道,如新闻、产品、案例等。ChannelID可以帮助我们区分这些频道,确保内容的正确分类和展示。
2. 权限控制:通过ChannelID,我们可以为不同用户或角色分配不同的权限,实现网站内容的精细化管理。
3. 数据统计与分析:ChannelID可以帮助我们统计和分析各个频道的数据,如访问量、浏览量等,为网站优化和运营提供有力支持。
4. 模板调用:在DedeCMS中,我们可以根据ChannelID调用不同的模板,实现个性化展示。
三、ChannelID的获取方法
1. 后台管理:登录DedeCMS后台,进入“频道管理”模块,查看各个频道的ChannelID。
2. 代码获取:通过查看DedeCMS源代码,可以找到ChannelID的值。
四、ChannelID的应用场景
1. 内容分类:在网站内容管理过程中,我们可以根据ChannelID对内容进行分类,方便用户查找和浏览。
2. 权限分配:为不同用户或角色分配ChannelID对应的权限,实现网站内容的权限控制。
3. 数据统计:通过ChannelID统计各个频道的数据,为网站优化和运营提供依据。
4. 模板调用:根据ChannelID调用不同的模板,实现个性化展示。
五、ChannelID的注意事项
1. 避免重复:在创建频道时,确保ChannelID的唯一性,避免重复。
2. 合理命名:ChannelID的命名应简洁明了,便于理解和记忆。
3. 修改谨慎:修改ChannelID时,需谨慎操作,以免影响网站正常显示。
DedeCMS ChannelID作为网站内容管理系统的核心概念,对于网站建设和运营具有重要意义。了解ChannelID的作用、获取方法和应用场景,有助于我们更好地利用DedeCMS,打造出功能强大、易于管理的网站。
以下是一个简单的表格,总结了本文的关键
| 序号 | 关键内容 | 说明 |
|---|---|---|
| 1 | 什么是ChannelID | 用于标识和管理不同频道内容的一个唯一标识符 |
| 2 | ChannelID的作用 | 区分不同频道、权限控制、数据统计与分析、模板调用 |
| 3 | 获取ChannelID的方法 | 后台管理、代码获取 |
| 4 | ChannelID的应用场景 | 内容分类、权限分配、数据统计、模板调用 |
| 5 | 注意事项 | 避免重复、合理命名、修改谨慎 |
通过本文的介绍,相信大家对DedeCMS ChannelID有了更深入的了解。在今后的网站建设和运营过程中,希望您能充分利用ChannelID,打造出更加优秀的网站!
dedecms 列表点击加载更多读取数据库内容怎么实现
使用方法:
1、加载是用AJAX,需要先引用jQuery
2、模板在arcajax.php第二十八行请自行按需修改
3、arcajax.php放到plus目录下
HTML和js代码:
<divid=”loading27″>加载中</div>
<ahref=”javascript:;”id=”getMore”pnum=”2″class=”index-morebgwmt15″>浏览更多案例……</a>
<scripttype=”text/javascript”>
$(“#getMore”).click(function(){
var_this=$(this),
pnum=_this.attr(“pnum”),//分页码
typeid=1;//栏目ID
if(pnum==0){
returnfalse;
}
$(“#loading27”).show();
$.ajax({
url:'/plus/arcajax.php',
data:{typeid:typeid,pnum:pnum},
success:function(data){
if(data!=''){
$(“.index-list”).append(data);//数据显示到页面
_this.attr(“pnum”,Number(pnum)+1);//分页+1
}else{
_this.text(“没有更多的数据”);
_this.attr(“pnum”,0)
}
$(“#loading27”).hide();
}
})
returnfalse;
})
</script>
PHP代码(arcajax.php):
<?php
require_once(dirname(__FILE__).”/../include/common.inc.php”);
require_once(DEDEINC.'/channelunit.class.php');
require_once(DEDEINC.'/taglib/arcpagelist.lib.php');
$pnum=empty($pnum)?0:intval(preg_replace(“/[^\d]/”,'',$pnum));
$typeid=empty($typeid)?0:intval(preg_replace(“/[^\d]/”,'',$typeid));
if($typeid==0||$pnum==0)die(“RequestError!”);
if($typeid>0)
{
$titlelen=AttDef($titlelen,30);
$infolen=AttDef($infolen,160);
$imgwidth=AttDef($imgwidth,120);
$imgheight=AttDef($imgheight,120);
$listtype=AttDef($listtype,'all');
$arcid=AttDef($arcid,0);
$channelid=AttDef($channelid,0);
$orderby=AttDef($orderby,'default');
$orderWay=AttDef($order,'desc');
$subday=AttDef($subday,0);
$line=$row;
$artlist='';
//通过页面及总数解析当前页面数据范围
$strnum=($pnum-1)*12;
$limitsql=”LIMIT$strnum,12″;
$innertext='<li[field:globalname=”autoindex”runphp=”yes”]if(@me%3==0)@me=\'class=”mrnone”\';else@me=””;[/field:global]>
<div><ahref=”[field:arcurl/]”title=”[field:title/]”><imgsrc=”[field:litpic/]”width=”278″height=”245″></a></div>
<h3><ahref=”[field:arcurl/]”title=”[field:title/]”>[field:title/]</a></h3>
<p>[field:descriptionfunction=”cn_substr(@me,150)”/]</p>
<spanclass=”more”><ahref=”[field:arcurl/]”>浏览案例</a></span>
</li>';//模板
//处理列表内容项
$query=”SELECTarc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,
tp.moresite,tp.siteurl,tp.sitepathFROM`#@__archives`arcLEFTJOIN`#@__arctype`tpONarc.typeid=tp.id
WHEREarc.typeidIN(“.GetSonIds($typeid).”)ORDERBYarc.sortrankdesc$limitsql”;
$dsql->SetQuery($query);
$dsql->Execute('al');
$dtp2=newDedeTagParse();
$dtp2->SetNameSpace('field','[',']');
$dtp2->LoadString($innertext);
$GLOBALS['autoindex']=0;
$ids=array();
for($i=0;$i<12;$i++)
{
for($j=0;$j<1;$j++)
{
if($row=$dsql->GetArray(“al”))
{
$ids[]=$row['id'];
//处理一些特殊字段
$row['info']=$row['infos']=cn_substr($row['description'],$infolen);
$row['id']=$row['id'];
if($row['corank']>0&&$row['arcrank']==0)
{
$row['arcrank']=$row['corank'];
}
$row['filename']=$row['arcurl']=GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],
$row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']);
$row['typeurl']=GetTypeUrl($row['typeid'],$row['typedir'],$row['isdefault'],$row['defaultname'],$row['ispart'],
$row['namerule2'],$row['moresite'],$row['siteurl'],$row['sitepath']);
if($row['litpic']=='-'||$row['litpic']=='')
{
$row['litpic']=$GLOBALS['cfg_cmspath'].'/images/defaultpic.gif';
}
if(!preg_match(“#^http:\/\/#”,$row['litpic'])&&$GLOBALS['cfg_multi_site']=='Y')
{
$row['litpic']=$GLOBALS['cfg_mainsite'].$row['litpic'];
}
$row['picname']=$row['litpic'];
$row['stime']=GetDateMK($row['pubdate']);
$row['typelink']=”<ahref='”.$row['typeurl'].”'>”.$row['typename'].”</a>”;
$row['image']=”<imgsrc='”.$row['picname'].”'border='0'width='$imgwidth'height='$imgheight'alt='”.preg_replace(“#['><]#”,””,$row['title']).”'>”;
$row['imglink']=”<ahref='”.$row['filename'].”'>”.$row['image'].”</a>”;
$row['fulltitle']=$row['title'];
$row['title']=cn_substr($row['title'],$titlelen);
if($row['color']!='')$row['title']=”<fontcolor='”.$row['color'].”'>”.$row['title'].”</font>”;
if(preg_match('#b#',$row['flag']))$row['title']=”<strong>”.$row['title'].”</strong>”;
//$row['title']=”<b>”.$row['title'].”</b>”;
$row['textlink']=”<ahref='”.$row['filename'].”'>”.$row['title'].”</a>”;
$row['plusurl']=$row['phpurl']=$GLOBALS['cfg_phpurl'];
$row['memberurl']=$GLOBALS['cfg_memberurl'];
$row['templeturl']=$GLOBALS['cfg_templeturl'];
if(is_array($dtp2->CTags))
{
foreach($dtp2->CTagsas$k=>$ctag)
{
if($ctag->GetName()=='array')
{
//传递整个数组,在runphp模式中有特殊作用
$dtp2->Assign($k,$row);
}else{
if(isset($row[$ctag->GetName()]))$dtp2->Assign($k,$row[$ctag->GetName()]);
else$dtp2->Assign($k,'');
}
}
$GLOBALS['autoindex']++;
}
$artlist.=$dtp2->GetResult().”
“;
}//ifhasRow
else{
$artlist.='';
}
}//LoopCol
}//loopline
$dsql->FreeResult(“al”);
}else
{
die(“RequestError!”);
}
AjaxHead();
echo$artlist;
exit();
dedecms自定义图片字段标签问题
之前选择的自定义图片图集
一、添加一个获取图片地址的方法
打开/include/extend.func.文件(注:这个文件就是系统预留的自定义函数接口文件,主要用于二次开发用的。如果你是老版本,默认没有这个文件,自己创建一个PHP文件即可),在最下面的?>上一行加入以下函数代码:(如果结尾没有?>那就直接在最下面添加)
function GetOneImgUrl($img,$ftype=1){ if($img<>''){$dtp= new DedeTagParse();$dtp->LoadSource($img); if(is_array($dtp->CTags)){ foreach($dtp->CTags as$ctag){ if($ctag->GetName()=='img'){$width=$ctag->GetAtt('width');$height=$ctag->GetAtt('height');$imgurl= trim($ctag->GetInnerText());$img=''; if($imgurl!=''){ if($ftype==1){$img.=$imgurl;} else{$img.='<img src=”'.$imgurl.'” width=”'.$width.'” height=”'.$height.'”/>';}}}}}$dtp->Clear(); return$img;}}
可以直接用下面的方法调用
[field:自定义图片字段名 function=”GetOneImgUrl(@me,显示类型)”/]
最终使用方法。
{dede:arclist typeid='12' addfields='datu' channelid='17' limit='0,7'}
<li><a href=”[field:arcurl/]” target=”_blank”><img border=”0″ src=”[field:datu%20function='GetOneImgUrl(@me,1)'/]”></a></li>
{/dede:arclist}
最终调用到这个图片地址。
dedecms 排除栏目 语句 notypeid
在DedeCMS(织梦内容管理系统)中,notypeid参数用于调用特定分类下的文章列表时排除某些分类。
在DedeCMS中,若想在调用文章列表时排除某些栏目,可以通过以下步骤实现:
修改PHP文件:
对于dede:channelartlist标签,需要修改includetaglibchannelartlist.lib.php文件。
对于arclist标签,需要修改/include/taglib/arclist.lib.php文件。
在这两个文件中,分别添加对notypeid参数的支持。这通常涉及到在查询数据库时,根据notypeid参数的值来排除指定的栏目ID。
模板调用:
在模板中,使用修改后的标签时,可以添加notypeid参数来指定要排除的栏目ID。
例如,对于dede:channelartlist标签,可以这样调用:{dede:channelartlist typeid='7' notypeid='8'},其中notypeid='8'表示排除ID为8的栏目。
对于arclist标签,调用方式可能如下:{dede:arclist row=6 orderby=pubdate type='image.' imgwidth='108' imgheight='150' channelid='1' notypeid='9'},其中notypeid='9'表示排除ID为9的类型。
注意事项:
在进行此类修改之前,务必备份相关文件,以防修改过程中出现意外情况导致网站无法正常运行。
确保对DedeCMS有一定的了解,熟悉其文件结构和标签用法,以避免因操作不当导致网站出现问题。
修改后的标签调用方式需要在模板中正确设置,以确保能够正确显示排除指定栏目后的文章列表。
通过以上步骤,就可以在DedeCMS中成功实现使用notypeid参数来排除特定分类下的文章列表了。




