服务Q Q:75303307

网站优化

网站建设

工作时间:周一至周五:8:30-6:00 周六、日:9:00-5:00

技术点滴

您的位置:主页 > 新闻观点 > 技术点滴 > 详细内容>

Dedecms建站技巧点滴

2012-08-15 11:27 作者:淄博网站建设 [ ]

需要根据需要做的一些初始化工作
 

模板中删除掉一些广告代码及版权信息
修改标题60字的限制 参数配置及数据库的修改
修改水印图片
删除默认favicon.ico
修改默认的后台样式 修改LOGO
根据设置修改缩略图默认宽度
根据情况关闭会员注册

.login-main 登录界面的修改,去除广告及LOGO信息  制作后台标志图片
删除后台一登录后的cms更新、授权、开发团队信息

根据父栏目取栏目图片

设置发布内容模板 发布选项:  生成HTML  仅动态浏览   默认选项

filename: common.inc.php BOM found, automatically removed.   dedecms bom引起的空白问题


很多朋友在开发网站的时候,做模板文件的时候喜欢使用".html"的格式,刚刚这个问题在DEDE的系统中可能在生成HTML文件的时候就会出现"模板文件不存在,无法解析文档"的问题!

所以解决方法就是把所有的模板文件的格式统一成".htm",这个问题就解决了!


 

调用子类

{dede:channel  row='4' typeid='1'}  
<li><a href="[field:typeurl/]">[field:typename/]</a></li>
{/dede:channel} 

替换模板

UPDATE dede_arctype SET tempindex=REPLACE(tempindex,'{lang}','en'),temparticle=REPLACE(temparticle,'{lang}','en') WHERE lang='en'
UPDATE dede_arctype SET tempindex=REPLACE(templist,'{lang}','gb2312'),temparticle=REPLACE(templist,'{lang}','gb2312') WHERE lang='gb2312'

dedecms显示空白

在archives_do.php里,编辑一节里,最后两名是:

header("location:{$gurl}?aid=$aid");
exit();


我跟踪半天,最后确定还是header没有执行,

上网查了半天,
1、location和“:”号间不能有空格,否则会出错。
2、在用header前不能有任何的输出。
3、header后的PHP代码还会被执行。

可能在此header前有输出了,所以header不能正常执行。
 
换一种解决办法:
 

echo '<META HTTP-EQUIV="REFRESH" CONTENT="1; URL='.$gurl.'?aid='.$aid.'">';

这样就正常执行跳转了,这样就可以正常编辑文章了。

 

如何调用当前栏目的上级栏目名称
网站需要在栏目列表页或内容页调用上级栏目的名称,也就是在列表或内容模板调用当前栏目的父栏目。方法如下,把以下代码插入到要显示DEDE系统父栏目的地方即可。

  {dede:type}
                [field:id runphp=yes]
                    $tsql = new DedeSql(false);
                    $typelink2 = '';
                    $tsql->SetQuery("Select i.typedir,i.typename From dede_arctype t left join dede_arctype i on i.id=t.reid where t.id='@me'");
                    $tsql->Execute('t');
                    while($row = $tsql->GetArray('t',MYSQL_ASSOC))
                    {
                       $typelink2 .= $row['typename'];
                    }
                    @me=$typelink2;
                [/field:id]
                {/dede:type}

  
在列表页和内容页调用顶级栏目名称方法

{dede:field.typeid  runphp='yes' function="GetTopid(@me)"}
$dsql = new DedeSql(false);
$a="SELECT typename FROM dede_arctype where id=@me";
$arcRow = $dsql->GetOne($a);
@me=$arcRow[typename];{/dede:field.typeid}

首页动态调用方法:
将根目录中的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 `dede_homepageset`");
$row['templet'] = MfTemplet($row['templet']);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']);
$pv->Display();
?>

下面再来介绍一下批量将文章和栏目设置为仅动态浏览的方法:(在后台的“系统”SQL命令行工具 )
1、将所有文档设置为“仅动态”:

执行以下MySQL语句:

update dede_archives set ismake=-1

2、将所有栏目设置为“使用动态页”,也可以建立栏目时选择“使用动态页”:

执行以下MySQL语句:

update dede_arctype set isdefault=-1

//获取父栏目图片
 

function GetTypeName($typeid){
 $typeandlink="";
 global $dsql;
 $query = "Select lmpic From dede_arctype where ID='$typeid'";
 $row = $dsql->GetOne($query);
 return $row['lmpic'];
}

 

笨办法调用标签
{dede:arclist typeid='2,3,4,5' row='20' titlelen='20' orderby='pubdate' idlist='' channelid='3'}可以显示子栏目内容

 

Dedecms系统 文章中怎么添加內链——文章内容自动添加关键字链接

 1、给系统默认的TAG标签加上链接:

{dede:tag sort='new' getall='0'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

就可以调用出本文对应的TAG,并且是带链接的。。。

2、去掉系统默认TAG标签的字数限制:

第一步:修改数据库中表dede_tagindex 和dede_taglist的tag字段属性:varchar(12)修改为varchar(255)

第二步:修改源码,在include/archives.func.php中查找:if(isset($tag[12])

修改为:if(isset($tag[255])

在include/archives.func.php中查找:if(isset($tag[20])

修改为:if(isset($tag[255])
 
这样就OK了

DEDECMS下拉式友情链接

有不少站点需要用到下拉式友情链接,这样能够节省的空间。

修改方法:

编辑打开\include\taglib\flink.lib.php

查找 else if($type=='image')

在其上面加入

else if($type=='option')
{
$link = "<option value='".$dbrow->url."'>".cn_substr($dbrow->webname,$titlelen)."</option>";
} 

在首页index.htm模板里面插入下面代码

 <select> <option selected="selected">--相关链接地址--</option> {dede:flink row='24' type='option'/}</select> 

然后更新首页就行了。
 

标题显示省略号

{dede:arclist titlelen='200' row='6' typeid='27' }
 <li><a href="[field:arcurl /]" title="[field:title /]">[field:title function='(strlen("@me")>44? cn_substr("@me",44)."…":"@me")'/]</a></li>
{/dede:arclist}

DEDECMS列表页有图显示缩略图,无图片不显示的方法

列表页模板中显示缩略图的代码改为
[field:array runphp='yes']@me = (strpos(@me['litpic'],'defaultpic') ? "" : "<a href='{@me['arcurl']}' class='preview'><img src='{@me['litpic']}'/></a>"); [/field:array]

 

dedecms 列表页文章日期修改方法

原来的为
[field:pubdate function="GetDateTimeMK(@me)"/]

DIY方式

[field:pubdate function="MyDate('Y-m-d',@me)"/]

修改方法说明 

Y-m-d   为 2011-01-18
y-m-d   为11-01-18
Y-M-d  为2010-Jan-18
Y-M-D  为11-Jan-Tue

dedecms文章排序方式

 orderby='sortrank' 文档排序方式
§ orderby='hot' 或 orderby='click' 表示按点击数排列
§ orderby='sortrank' 或 orderby='pubdate' 按出版时间排列
§ orderby='near'
§ orderby='lastpost' 按最后评论时间
§ orderby='scores' 按得分排序
§ orderby='id' 按文章ID排序
§ orderby='rand' 随机获得指定条件的文档列表

正序倒序通过:
倒序排列:orderway='asc'
正常排列:orderway='desc'


 

本页关键词: 建站技巧 dedecms

上一篇:没有了 下一篇:网站网络维护常见问题(不断更新)