加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

手把手教你建造DedeCMS自界说通告模板

发布时间:2021-05-23 21:04:10 所属栏目:教程 来源:网络整理
导读:织梦CMS很强盛,用过的人赞叹,织梦开拓团队产物开源后就已为我们计划了一套模板,看起来还不错,可是用久了就发明很丑,很丢脸,而且也不是很完美,因此我们就有想自已DIY的设法, 比喻站点的最新通告表现位就没有,在网上找了良久,没有发明相干的信息,也许是我没有找

织梦CMS很强盛,用过的人赞叹,织梦开拓团队产物开源后就已为我们计划了一套模板,看起来还不错,可是用久了就发明很丑,很丢脸,而且也不是很完美,因此我们就有想自已DIY的设法,

比喻站点的最新通告表现位就没有,在网上找了良久,没有发明相干的信息,也许是我没有找到,以是就花了几个小时研究了一下DEDECMS的部门源码,试想,何不自已写呢

好吧,设法有了,开始形动吧,跟我来,让狼人教你DIY一个自界说的模块.

在这里我就给各人举一个实例<<站点通告信息的模板>>

首要有:<<首页表现最新通告>>,<<通告具体表现页面>>,<<通告列表页面>>

好的,我们一个个的来

一.<<首页表现最新通告>>起首是在首页表现最新通告<在index.htm页面添加代码>
代码标签是:------------------------------------------------------------------------------

begin:

{dede:mynews row='1' titlelen='20'}最新通告:[field:title /]<a href="show-mynews.php?aid=[field:aid /]">查察具体</a></div>{/dede:mynews}

end;

二.<<通告具体表现页面>>新建文件show-mynews.php
代码如下:

begin:

<?php
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>通告具体</title>
<link href="/templets/style/dedecms.css" rel="stylesheet" media="screen" type="text/css" />
<script language="javascript" type="text/javascript" src="/include/dedeajax2.js"></script>
<script src="/js/jquery-1.2.6.min.js" language="javascript" type="text/javascript"></script>
</head>
<body>

<?php
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/head.htm");
$pv->Display();
?>

<?php
if (! is_numeric($aid))
{
echo "赏识页面参数不正确";
exit;
}
global $dsql;
$row = $dsql->GetOne("Select * from dede_mynews where aid=$aid");
if(!is_array($row))
{
echo "对不起,没有找到您所查找到的通告信息";
exit;
}
?>

<div class="w960 center" style="border:#ccc 1px solid;margin-top:5px;">
<?php
echo "<h1 style='text-align:center;margin-top:20px;font-size:20px;border-bottom:#ccc 1px solid;'>".$row["title"]."</h1>";
echo "<div style='padding:8px;'>".$row["body"]."</div>";
?>
</div>

<?php
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/footer.htm");
$pv->Display();
?>
</body>
</html>

end;

三.<<通告列表页面>>改表现全部通告列表,不分页<通告原来就不是许多以是这里我们不分页表现列表了>在include aglib目次下面找到文件(mynews.lib.php)
代码标签是:------------------------------------------------------------------------------

begin:

<?php
function lib_mynews(&$ctag,&$refObj)
{
global $dsql,$envs;
//属性处理赏罚
$attlist="row|1,titlelen|24";
FillAttsDefault($ctag->CAttribute->Items,$attlist);
extract($ctag->CAttribute->Items,EXTR_SKIP);

$innertext = trim($ctag->GetInnerText());
if(empty($row)) $row=1;
if(empty($titlelen)) $titlelen=30;
if(empty($innertext)) $innertext = GetSysTemplets('mynews.htm');

$idsql = '';
if($envs['typeid'] > 0) $idsql = " where typeid='".GetTopid($this->TypeID)."' ";
$dsql->SetQuery("Select * from dede_mynews $idsql order by senddate desc limit 0,$row");

if($row == -1) $dsql->SetQuery("Select * from dede_mynews $idsql order by senddate desc");//狼人(QQ:459094521)加,假如配置为-1,就表现全部文章

$dsql->Execute();
$ctp = new DedeTagParse();
$ctp->SetNameSpace('field','[',']');
$ctp->LoadSource($innertext);
$revalue = '';
while($row = $dsql->GetArray())
{
foreach($ctp->CTags as $tagid=>$ctag){
@$ctp->Assign($tagid,$row[$ctag->GetName()]);
}
$revalue .= $ctp->GetResult();
}
return $revalue;
}
?>

end;

在站点根目次新建list-mynews.php内里写代码:

begin:/*用于挪用/default/list-mynews.htm页面的标签来表现*/

<?php
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/list-mynews.htm");
$pv->Display();
?>

end;

在templetsdefault目次下面新建文件list-mynews.htm,并写代码如下:

begin:

{dede:mynews row='-1' titlelen='20'}<br/>
编号:[field:aid /],<a href='show-mynews.php?aid=[field:aid /]'>问题:[field:title /]</a>,作者:[field:writer /],宣布时刻:[field:senddate /],内容:[field:body /]<br/>
{/dede:mynews}

end;

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读