saber 酱的抱枕

Fly me to the moon

07/14
2014
学习

dedecms搜索功能

首先需要在前台页面模板添加上 dedecms站内搜索框代码如下:

<form id="search" name="search" method="post" action="{dede:global.cfg_cmsurl/}/plus/search.php">
<input type="text" name="keyword" value="请输入关键字" />
<input type="submit" value="站内搜索" />
</form>

然后,我们需要新建一个search.htm页面模板,直接把列表模板另存为搜索模板就行了,然后把dede:list标签的pagesize属性改成perpage,别的不用动。

但是在搜索模板里无法调用arclist和channelartlist标签,需要修改include/arc.searchview.class.php。先查找

require_once(DEDEINC."/taglib/channel.lib.php");

在其后加入

require_once(DEDEINC."/taglib/arclist.lib.php");    
require_once(DEDEINC."/taglib/channelartlist.lib.php");

然后查找

            else if($tagname=="hotwords")
            {
                $this->dtp->Assign($tagid,lib_hotwords($ctag,$this));
            }

在其后接上

else if($tagname=="arclist")
{                    
	$this->dtp->Assign($tagid,lib_arclist($ctag,$this));  
}                
else if($tagname=="channelartlist")   
{                    
	$this->dtp->Assign($tagid,lib_channelartlist($ctag,$this));  
}

这样简单的 dedecms站内搜索功能就可以实现了。

dedecms搜索功能

07/14
2014
学习

dedecms5.7发表文章提示标题不能为空的原因

dedecms后台添加文章时,提示标题不能为空,但是,标题、内容和分类都是填好的

对系统设置的修改只能保存英文的修改,中文的提示成功但是没有更改

原因:
这个是php版本和 dedecmsgbk编码间产生的问题

htmlspecialchars在php5.4默认为utf8编码,gbk编码字符串经 htmlspecialchars
转义后的中文字符串为空,也就是标题为空。

最好的办法是使用utf-8的 dedecms,不会有问题。

解决方法1:

如果用的是php5.4,换成5.3就好了.

解决方法2:
给htmlspecialchars添加ENT_COMPAT ,'GB2312'参数修改编码默认值。
具体修改页面:
1、dede/article_add.php 和 dede/article_edit.php
将 $title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));改成$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');
2、include/ckeditor/ckeditor_php5.php 138行将htmlspecialchars($value)替换为htmlspecialchars($value, ENT_COMPAT ,'GB2312')
测试,发布文章成功。

dedecms5.7发表文章提示标题不能为空的原因

07/14
2014
学习

设置列表页和搜索页的显示条数

列表页修改{dede:list perpage='10'} 把数字10改成你需要的条数
搜索页修改:{dede:list perpage='10'} 先把10改成你需要的条数
然后找到 /plus/search.php 并打开查找下面这段代码
$pagesize = (isset($pagesize) && is_numeric($pagesize)) ? $pagesize : 10;
把数字10改成你需要的条数就可以了

设置列表页和搜索页的显示条数

07/14
2014
学习

如何备份 dedecms

般 dedecms备份需要备份以下三个数据:

模板文件夹、附件文件夹(uploads)以及数据库文件。

数据库文件在根目录找到data文件夹,下载其中的backupdata文件夹即可。

恢复时把以上文件恢复到相应目录,进入后台进行数据库还原就行了。

如何备份 dedecms