DEDECMS建站后布局模板修改方法
1 修改默认模板中的 index.htm和 head.htm。
找到这两个文件的方法有两种:
1)直接访问你网站的FTP,文件再目录/templets/default/ 下,下载到本地修改后上传覆盖。
2)登录到DEDE后台,在模板管理找到文件点击修改就可以在线编辑了,建议先保存源文件,以备修改出错后可以恢复。
比如我修改index.htm,将flashnews ,picnews,还有各分类显示的内容去掉了。 主要找<p> </p>标签之间代码,删除之后,点击保存,然后点击“生成”—>更新主页HTML就可以看到修改之后的效果。一般反复修改多次才会达到你想要的布局。
另外修改分类页面(list_article.htm)和文章页面(article_article.htm)也是一样的方法。提醒的地方就是修改完之后要记得在“生成”页面更新相应的HTML,或是点击“一键更新网站”和“更新系统缓存”即可。
修改分类页面的XXX 可以到这里看看:
修改文章页面的XXX到这里:
1、 做网站的应该都知道SEO,可以看到很多网站文章页面都会有个“推荐文章”或是“阅读此文的人还阅读了。。。”,这就是相关文章了,那么我们怎么让文章页面显示相关文章呢?
找到article_article.htm模板,点击修改,打开后找到下图方框中的代码,这里是显示文章的内容,在这段代码下面加上相关文章代码(下图椭圆部分就是),
——————————————————————————————
<br><br><ul><b>阅读本文的姐妹还阅读:</b></ul>
{dede:likearticle row='12' col='1' titlelen='80'}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:likearticle}
——————————————————————————————
这里row的数值是显示相关文章的个数
还要修改标签文件:
找到文件:\include\taglib\likearticle.lib.php
打开找到下面的代码:
$typeid = " And arc.typeid in($typeid) And arc.id<>$arcid ";
修改为:
$typeid = " And arc.id<>$arcid ";
保存,再更新网站就搞定了
2、 dedecms建立的网站,网站主页在浏览器地址栏中显示是带/index.html的,一般做SEO的都不愿意保留这个后缀,那么怎么去掉index.html只显示主域名呢。
修改方法是,打开网站根目录的index.php
-------------将代码修改为下面的就可以-------------
<?php
if(!file_exists(dirname(__FILE__).'/data/common.inc.php'))
{
header('Location:install/index.php');
exit();
}
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
$GLOBALS['_arclistEnv'] = 'index';
$row = $dsql->GetOne("select * From `#@__homepageset`");
$row['templet'] = MfTemplet($row['templet']);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']);
$pv->Display();
?>
4、祖传宝减肥网的文章内容页和栏目列表页的右侧“推荐内容”改成全站“最新文章”
修改的是:文章内容页模板 article_article.htm 和默认文章列表模板 list_article.htm
修改代码:
找到显示推荐内容的代码内容修改为下面的:
<dt><strong>最新文章</strong></dt>
<dd>
<ul class="c1 ico2">
{dede:arclist row=10 titlelen=32 noflag='h' typeid=1,2,3,4,5,6,7,8,9,10,11}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
</ul>
</dd>
</dl>
</p><!-- /commend -->
<p class="hot mt1">
<dl class="tbox light">
<dt><strong>热点内容</strong></dt>
<dd>
<ul class="c1 ico2">
{dede:arclist sort='hot' subday='30' titlelen=42 row=8 typeid=1,2,3,4,5,6,7,8,9,10,11}
<li><a href="[field:arcurl/]">[field:title/]</a></li>{/dede:arclist}
</ul>
</dd>
</dl>
</p>
大家可能发现typeid那里写上了一些数字,因为测试的时候如果是默认的代码,显示的是本分类的文章或只有当前文章,加上文章分类ID之后就可以显示所有分类的最新文章。
5在你转载其他网站文章的时候,拷贝内容会带有该网站的版权信息。那么怎么在你自己的网站也加上这个呢。
方法很简单,修改文章内容页模板 article_article.htm
在<p>
<table width='100%'>
<tr><td>{dede:field.body/} 代码的后面加入下面的脚本代码:
<script type="text/javascript">
document.body.oncopy = function () {
setTimeout( function () {
var text = clipboardData.getData("text");
if (text) {
text = text + "本文来自: 祖传宝减肥网(http://www.zuchuanbao.com) 详细出处参考:"+location.href; clipboardData.setData("text", text);
}
}, 100 )
}
</script>
保存,更新网站!
6、如何修改网站RSS的输出格式:
6-1)找到位于dede(也就是你的后台文件夹)目录下的makehtml_rss_action.php文件
然后找到 echo "完成所有文件更新!";
在这个下面添加 echo "<a href='/rss.xml' target='_blank'>浏览...</a>"; 这里是让你在生成成功后点击查看生成结果的
找到位于 根目录include目录下的arc.rssview.class.php文件
然后找到 $murl = $GLOBALS['cfg_cmspath']."/data/rss/".$this->TypeID.".xml";
修改成 $murl = $GLOBALS['cfg_cmspath']."/rss.xml"; 这里是修改路径让生成的rss.xml文件保存在根目录
向下找到
$orwhere .= "And (arc.typeid in (".GetSonIds($this->TypeID,$this->TypeFields['channeltype']).") )";
删除整句
然后找到位于dede找到位于dede(同你的后台文件夹)下的templets文件夹打开里面的makehtml_rss.htm文件
然后找到<input name="maxrecord" type="text" id="maxrecord" value="50" size="8">
修改数字50为你需要生成的条数也可以在后台生成的时候输入。
如果你生成的rss.xml文件有错误,请打开根目录下面的templets文件夹下面的plus文件夹里面的rss.htm文件,然后找到
<description><![CDATA[[field:description function='html2text(@me)'/]]]></description>
修改成<description><![CDATA[[field:description/]]]></description>
6-2)在使用多站点支持时需设置绝对路径,rss的输出的时候会在绝对路径前多出一个域名,从而导致输出的url错误。值需要修改/include/arc.rssview.class.php 就可以解决问题
删除第33行的$GLOBALS['cfg_basehost'].
修改前:
$this->TypeFields['typelink'] = $GLOBALS['cfg_basehost'].$this->TypeLink->GetOneTypeUrl($this->TypeFields);
修改后:$this->TypeFields['typelink'] = $this->TypeLink->GetOneTypeUrl($this->TypeFields);
以及第129行的$GLOBALS["cfg_basehost"].
修改前:$row["fullurl"] = $GLOBALS["cfg_basehost"].$row["arcurl"];
修改后:$row["fullurl"] = $row["arcurl"];
7、如何让dede tag列表页按最新发布时间排序,(默认的是最新文章在最后一页)。具体修改方法如下
在网站根目录的/include 目录下找到arc.taglist.class.php 文件,在499行
$this->dsql->SetQuery("select aid From `dede_taglist` where tid = '{$this->TagInfos['id']}' And arcrank>-1 limit $limitstart,$getrow ");
把上面的代码修改为如下代码
$this->dsql->SetQuery("select aid From `dede_taglist` where tid = '{$this->TagInfos['id']}' And arcrank>-1 order by aid desc limit $limitstart,$getrow ");