新项目中有个优化站,由于需要跟其他平台合作,帮助带来流量,那边做反向代理,需要自己网站的所有栏目以及内容都放到一个文件夹下,比如:/html/haha、/html/hehe/,都放到html文件夹下。问题就来了,我的栏目都是在根目录的所以只能在到后台改栏目的设置,哦嘎的:太多了只能批量改,操作如下:

织梦的,栏目地址和一些信息在dede_arctype中,栏目地址在dirtype这个字段里,sql语句如下

数据库内字段内容替换:

最近给朋友做网站,里边大部分都是图集型的文章,之前还好好的,今天添加图集文章的时候提示“标题不能为空”,试了好几遍,中文的标题就会提示这个,你写字母就没问题…抓狂

于是找了下度娘,解决办法基本都是一样的试了下,管用!!!!!(如下)

问题症状:V5.7登录后台后,发布英文标题没问题,发布中文会提示“标题不能为空”。

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

解决办法:给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′)

这样就ok了,不再提示标题为空了

但是还想问为什么我以前能发布文章没问题,突然就这样了呢- -蒙圈

标签名称:arclist
标记简介:织梦常用标记,也称为自由列表标记,其中imglist、imginfolist、specart、coolart、autolist都是由该标记所定义的不同属性延伸出来的别名标记。
功能说明:获取指定文档列表
适用范围:全局使用
基本语法:

使用实例

row=’10’ 调用10条, titlelen=’60’标题长度为30汉字 flag=”c” 推荐文章 orderby=” 默认为按发布时间排序
flag = ‘c’ 自定义属性值:头条[h] 推荐[c] 图片[p] 幻灯[f] 滚动[s] 跳转[j] 图文[a] 加粗

相关函数:
文件\include\taglib\arclist.lib.php第7行
function lib_arclist(&$ctag,&$refObj)
参数说明:
col=” 分多少列显示(默认为单列),5.3版中本属性可以通过多种方式进行多行显示
如果col=’1’要多列显示的可用div+css实现
以下为通过div+css实现多列的示例:
<style type=text/css>
div{width:400px;float:left;}
< /style>
{dede:arclist row=’10’ titlelen=’24’ orderby=’pubdate’ idlist=” col=’2′}
•[field:textlink/]([field:pubdate function=MyDate(‘m-d’,@me)/])<br/>
{/dede:arclist}
当col>1将使用原来的table多列方式显示
row=’10’ 返回文档列表总数
typeid=” 栏目ID,在列表模板和档案模板中一般不需要指定,在首页模板中允许用”,”分开表示多个栏目;
getall=’1′ 在没有指定这属性的情况下,在栏目页、文章页模板,不会获取以”,”分开的多个栏目的下级子类
titlelen = ’30’ 标题长度 等同于titlelength
infolen=’160′ 表示内容简介长度 等同于infolength(只控制infos,并不控制description的内容)
imgwidth=’120′ 缩略图宽度
imgheight=’90’ 缩略图高度
listtype=’all’ 栏目类型 image含有缩略图 commend推荐
orderby=’sortrank’ 文档排序方式
§ orderby=’hot’ 或 orderby=’click’ 表示按点击数排列
§ orderby=’sortrank’ 或 orderby=’pubdate’ 按出版时间排列
§ orderby=’near’
§ orderby==’lastpost’ 按最后评论时间
§ orderby==’scores’ 按得分排序
§ orderby=’id’ 按文章ID排序
§ orderby=’rand’ 随机获得指定条件的文档列表
keyword=” 含有指定关键字的文档列表,多个关键字用”,”分
innertext = ” 单条记录样式
aid=” 指定文档ID
idlist =” 提取特定文档(文档ID)
channelid 频道ID
limit=’起始ID,记录数’ (起始ID从0开始)表示限定的记录范围(如:limit=’1,2′ 表示从ID为1的记录开始,取2条记录)
flag = ‘h’ 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗
noflag = ” 同flag,但这里是表示不包含这些属性
orderway=’desc’ 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序
subday=’天数’ 表示在多少天以内的文档
用arclist调用于附加表字段的方法:
要获取附加表内容,必须符合两个条件
1、指定 channelid 属性
2、指定要获得的字段 addfields=’字段1,字段’
如:
{dede:arclist addfields=’filetype,language,softtype’ row=’8′ channelid=’3′}
[field:textlink /] – [field:softtype /]<br />
{/dede:arclist}

底层模板字段:
ID(同 id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,
source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,
description(同infos),filename, image, imglink, fulltitle, textlink, typelink,plusurl, memberurl, templeturl,
stime(pubdate 的”0000-00-00″格式)
其中:
textlink = <a href=’arcurl’>title</a>
typelink = <a href=’typeurl’>typename</a>
imglink = <a href=’arcurl’><img src=’picname’ border=’0′ width=’imgwidth’ height=’imgheight’></a>
image = <img src=’picname’ border=’0′ width=’imgwidth’ height=’imgheight’ alt=’titile’>
字段调用方法:[field:varname/]
如:
{dede:arclist infolen=’100′}
[field:textlink/]
< br>
[field:infos/]
< br>
{/dede:arclist}
注:底层模板里的Field实现也是织梦标记的一种形式,因此支持使用PHP语法,Function扩展等功能。
如: 给当天发布的内容加上 (new) 标志
[field:senddate runphp=’yes’]
$ntime = time();
$oneday = 3600 * 24;
if(($ntime – @me)<$oneday) @me = “<font color=’red’>(new)</font>”;
else @me = “”;
[/field:senddate]

1.安装准备

·Linux(Ubuntu)
·Apache2
·MySQL5
·PHP5.3
服务器需要具备以上几个基本环境,一般Linux的Web操作系统都会默认安装这些组件,当然您也可以自己去安装,具体的安装方法可以通过在线的一些文档获取,这里就不进行深入。

2.下载解压DedeCMS最新版

通过www.dedecms.com下载DedeCMS最新版,一般下载包为DedeCMS****.tar.gz格式,Linux下可以使用命令行:
tar -zxvf DedeCMS-****.tar.gz
将解压后的uploads目录上传到站点根目录,我们这里系统站点根目录为:/var/dedecms/

3.安装DedeCMS

访问http://我的站点/install,点击确认进入服务器环境监察,我们可以看到服务器情况(如图1)。
这里我们发现几个目录没有可写入权限,我们需要给这个目录分为权限。
首先需要给站点目录绑定apache服务的用户,使用命令行:
sudo chown -R www-data /var/dedecms/
这样给站点目录指定权限用户为www-data
我们这里需要给几个无需写入权限的目录去除写入权限,分别输入:

这样我们继续执行下一步。

4.设定执行权限

我们可以给DedeCMS几个目录关闭可执行权限,这里的可执行是指在Apache中无法运行php脚本,那我们则可以在Apache目录配置中做如下的设置(虚拟机可设置.htaccess)
<VirtualHost *:80>
<Directory /var/dedecms/uploads/>
php_admin_flag engine off
</Directory>
<Directory /var/dedecms/data/>
php_admin_flag engine off
</Directory>
<Directory /var/dedecms/html/>
php_admin_flag engine off
</Directory>
<Directory /var/dedecms/templets/>
php_admin_flag engine off
</Directory>
<Directory /var/dedecms/images/>
php_admin_flag engine off
</Directory>
</VirtualHost>
因为我们这里是PHP5,所以可以按照上面的方法设置。如果是老版本的PHP,那就只能通过:
<Directory “/var/dedecms/uploads/”>
<Files ~ “.php”>
Order allow,deny
Deny from all
</Files>
</Directory>
来设定。

5.完成安装

至此我们已经完成了DedeCMS的安装和配置。

本文实例讲述了还原dedecms数据后系统基本参数空白的解决方法。分享给大家供大家参考。具体方法如下:

有时dedecms开发的网站在更换空间还原数据后,出现“系统基本参数”空白,而且可以看到tag也没有了.

大家不妨看看后台“数据库备份/还原”处,已经还原后的表格中dede_sysconfig、dede_sys_set、(dede_taglist)记录数为0.

其实解决的方法很简单,我们从头说起,首先在原来空间将数据备份,并上传到新空间,在data/backupdata/文件夹里.

首先更换空间后,重新安装,如果你的网站根目录里还有install文件夹(如果已经删掉了,那就重新下载个程序,把install文件夹拷贝过来就行),把其中的install_lock.txt文件删除,原来的dede文件夹改成什么名再改dede,安装完成后再更改回去即可,然后浏览器输http://你的域名/install,安装即可,里面需要输入数据库信息,按新空间对应的数据库输入即可.

安装完成后,登陆后台,将备份的数据还原,需要注意的就在这里了,有个“附加参数“选项“还原表结构信息”,默认是选上的,那么就去掉,不要还原表格信息,如下图所示:

 

因为还原表格信息,就会破坏原有安装后默认的完整表格结构,而我们备份的数据中dede_sysconfig、dede_sys_set 、(dede_taglist)这些表数据都为空,那么还原后,会发现“系统基本参数”空白,无显示了.

不勾选”还原表格信息“,那么我们还原数据后,表格就是完整的,那么我们可以更改系统基本参数了,因为里面的内容都是刚刚重装程序默认的,需要按照自己的要求重新更改,包括网站名、关键词、描述等等.

需要更改的可能还有友情链接、广告等,至于tag,有个换取tag的按钮,点击即可,这样工作基本就完成了.