看到求解决方法的懂的而不回复的所谓的高手们。小弟写得可能不是很明白,附上代码方面参照
第一步:下载DEDE5.5 这个不用说了吧
第二步:安装DEDE5.5这个也不用说了吧
第三步:把安装好的DEDE,templetsdefault里面的模板复制多一份,命名为英文识别,例如:list_article.htm 复制出来的命名为:list_article_en.htm,发英文版的时候用些列表模板
第四步:可能有些网友出来新建栏目错误,无法保存内容,解决添加顶级栏目错误方法
1. 找到这个文件
dede empletscatalog_edit.htm定位到426行
GetEditor(“content”,$myrow[’content’],”450″,”Default”,”print”,”false”);改成
GetEditor(“content”,$myrow[’content’].” “,”450″,”Default”,”print”,”false”);
2. 如果需要的话再将dede empletscatalog_add.htm用上述方法解决,
定位到519行
GetEditor(“content”,””,”450″,”Default”,”print”,”false”);
改成
GetEditor(“content”,”新建 “,”450″,”Default”,”print”,”false”);
好看的话就用智能ABC 用V1 把新建改为全角空格好的,现在基本已经安装好DEDE5.5了我们直接说中英文翻页问题吧那些什么上一页 下一页 上一篇 下一篇,就在这里开始完全它吧,需要修改到四个文件includearc.archives.class.php includearc.listview.class.php templetsdefaultarticle_article_en.htm templetsdefaultlist_article_en.htm 我们直接说英文的方法,中文的自己应该知道改了先新建个新闻中心栏目吧,新建方法也不多说了 列表模板、文章模板 一定要改为*_en.htm的模板,我喜欢直接建子栏目,建多一个新闻资讯吧,全部建好不用说,现在创建文章,一定是中文翻页,现在我们就去改代码,加判断,先改列表模板跟文章模板吧,打开列表模板templetsdefaultlist_article_en.htm找到这行
{dede:pagelist listitem=”info,index,end,pre,next,pageno” listsize=”5″ /}
更改为
{dede:pagelist listitem=”info,index,end,pre,next,pageno” listsize=”5″ sitelang=”en” /}
中文版的自己去添加然后改成sitrlang=”cn” 这个就完成了,现在就去写判断让它用英文列表模板的会用英文的显示找开includearc.listview.class.php找到这行
$list_len = trim($ctag->GetAtt(“listsize”));
更改为
$site_lang = trim($ctag->GetAtt(“sitelang“));
再往下看,大概481行跟488行把原来的:
if($ismake==0)
{
$this->dtp->Assign($tagid,$this->GetPageListDM($list_len,$listitem));
}
else
{
$this->dtp->Assign($tagid,$this->GetPageListST($list_len,$listitem));
}
更改为
if($ismake==0)
{
$this->dtp->Assign($tagid,$this->GetPageListDM($list_len,$listitem, $site_lang ));
}
else
{
$this->dtp->Assign($tagid,$this->GetPageListST($list_len,$listitem,$site_lang ));
}
然后再修改GetPageListDM、GetPageListST这两个函数里面判断完就可以了,找到这行,大概在754行
function GetPageListST($list_len,$listitem=”index,end,pre,next,pageno”)
更改为
function GetPageListST($list_len,$listitem=”index,end,pre,next,pageno”, $site_lang)
看下去763行$totalpage = ceil($this->TotalResult/$this->PageSize);加车在它下面添加
if($site_lang == ’cn’)
{
然后在大概803行//option链接 这个注释上面添加 },把If完全这就完成了中文版的判断,添加英文版的,直接在添加}后面添加
elseif ($site_lang == ’en’)
{
if($totalpage<=1 && $this->TotalResult>0)
{ return “<li><span class=”pageinfo”>TOTALS <strong>1</strong>page<strong>”.$this->TotalResult.”</strong>records</span></li>
“;
}
if($this->TotalResult == 0)
{
return “<li><span class=”pageinfo”>TOTALS <strong>0</strong>page<strong>”.$this->TotalResult.”</strong>records</span></li>
“;
}
$purl = $this->GetCurUrl();
$maininfo = “<li><span class=”pageinfo”>TOTALS <strong>{$totalpage}</strong>page<strong>”.$this->TotalResult.”</strong>piece</span></li>
“;
$tnamerule = $this->GetMakeFileRule($this->Fields[’id’],”list”,$this->Fields[’typedir’],$this->Fields[’defaultname’],$this->Fields[’namerule2’]);
$tnamerule = ereg_replace(’^(.*)/’,’’,$tnamerule); //获得Previous Page和Home page的链接
if($this->PageNo != 1)
{
$prepage.=”<li><a href=’”.str_replace(“{page}”,$prepagenum,$tnamerule).”’>Previous</a></li>
“;
$indexpage=”<li><a href=’”.str_replace(“{page}”,1,$tnamerule).”’>Home</a></li>
“;
}
else
{
$indexpage=”<li>Home</li>
“;
} //Next Page,End page的链接
if($this->PageNo!=$totalpage && $totalpage>1)
{
$nextpage.=”<li><a href=’”.str_replace(“{page}”,$nextpagenum,$tnamerule).”’>Next</a></li>
“;
$endpage=”<li><a href=’”.str_replace(“{page}”,$totalpage,$tnamerule).”’>End</a></li>
“;
}
else
{
$endpage=”<li>End</li>
“;
}
} //差不多840行就结束
找到这行,大概在907行,即//获取动态的分页列表下面
function GetPageListDM($list_len,$listitem=”index,end,pre,next,pageno”)
更改为
function GetPageListDM($list_len,$listitem=”index,end,pre,next,pageno”, $site_lang)
继续加判断,继续看下去找到$totalpage = ceil($this->TotalResult/$this->PageSize); 回车后加If判断
if($site_lang == ’cn’)
{
然后在大概939行即
$geturl = “tid=”.$this->TypeID.”&TotalResult=”.$this->TotalResult.”&”;
$purl .= ’?’.$geturl;
上面添加没有完成的判断括号 }。继续给英文添加判断直接后面加入
elseif($site_lang == ’en’)
{
if($totalpage<=1 && $this->TotalResult>0)
{
return “<li><span class=”pageinfo”>TOTALS 1 page/”.$this->TotalResult.” records</span></li>
“;
}
if($this->TotalResult == 0)
{
return “<li><span class=”pageinfo”>TOTALS 0 page/”.$this->TotalResult.” records</span></li>
“;
}
$maininfo = “<li><span class=”pageinfo”>TOTALS <strong>{$totalpage}</strong>page<strong>”.$this->TotalResult.”</strong>piece</span></li>
“;
$purl = $this->GetCurUrl();
if($cfg_rewrite == ’Y’)
{
$nowurls = ereg_replace(“-“, “.php?”, $purl);
$nowurls = explode(“?”, $nowurls);
$purl = $nowurls[0];
}
}
然后在 //获得上一页和下一页的链接 这个注释下面添加Ifif($site_lang == ’cn’)
{
到 //获得数字链接 上面结束添加括号 }。继续给英文添加判断直接后面加入
elseif($site_lang == ’en’)
{
if($this->PageNo != 1)
{
$prepage.=”<li><a href=’”.$purl.”PageNo=$prepagenum’>Previous</a></li>
“;
$indexpage=”<li><a href=’”.$purl.”PageNo=1’>Home</a></li>
“;
}
else
{
$indexpage=”<li><a>Home</a></li>
“;
}
if($this->PageNo!=$totalpage && $totalpage>1)
{
$nextpage.=”<li><a href=’”.$purl.”PageNo=$nextpagenum’>Next</a></li>
“;
$endpage=”<li><a href=’”.$purl.”PageNo=$totalpage’>End</a></li>
“;
}
else
{
$endpage=”<li><a>End</a></li>
“;
}
}
到这一步,中英文分页已经完成了现在我们来解决上一篇下一篇的问题吧打开templetsdefaultarticle_article_en.htm 文件,找到47、48行
<li>{dede:prenext get=’pre’/}</li>
<li>{dede:prenext get=’next’/}</li>
更改为
<li>{dede:prenext get=’pre’ sitelang=’en’/}</li>
<li>{dede:prenext get=’next’ sitelang=’en’/}</li>
这个就完成了,现在就去写判断让它用英文的文章模板的会用英文的显示打开 includearc.archives.class.php 文件,找到
$this->dtp->Assign($i,$this->GetPreNext($ctag->GetAtt(’get’)));
更改为
$this->dtp->Assign($i,$this->GetPreNext($ctag->GetAtt(’get’), $ctag->GetAtt(’sitelang’)));
然后再找函数 GetPreNext 找到
function GetPreNext($gtype=’’)
更改为
function GetPreNext($gtype=’’, $site_lang)
又到写判断代码了直接在
function GetPreNext($gtype=’’, $site_lang)
{//添加在这里$str_pre = ’’;
$str_next = ’’;
$str_pre_words = ’’;
$str_next_words = ’’; if($site_lang == ’cn’)
{
$str_pre = ’上一篇’;
$str_next = ’下一篇’;
$str_pre_words = ’上一篇:没有了’;
$str_next_words = ’下一篇:没有了’;
}elseif($site_lang == ’en’)
{
$str_pre = ’Preview’;
$str_next = ’Next’;
$str_pre_words = ’Preview:no’;
$str_next_words = ’Next:no’;
} $rs = ’’;………..}
然后将 if(is_array($preRow)) 里面的上一篇下一篇 上一篇:没有了,下一篇:没有换成变量,找到
$this->PreNext[’pre’] = “上一篇:<a href=’$mlink’>{$preRow[’title’]}</a> “;
改为
$this->PreNext[’pre’] = $str_pre .“:<a href=’$mlink’>{$preRow[’title’]}</a> “;
找到
$this->PreNext[’pre’] = “上一篇:没有了 “;
改为
$this->PreNext[’pre’] = $str_pre_words;
找到
$this->PreNext[’next’] = “下一篇:<a href=’$mlink’>{$nextRow[’title’]}</a> “;
改为
$this->PreNext[’next’] = $str_next . “:<a href=’$mlink’>{$nextRow[’title’]}</a> “;
找到
$this->PreNext[’next’] = “下一篇:没有了 “;
改为
$this->PreNext[’next’] = $str_next_words;
到这里,英文上一篇下一篇,也已经完成。
下面我们来看下DedeEIMS的系统设置部分,我们登录系统后台查看[系统设置]-[系统基本参数],我们可以看到系统设置分为以下几个部分:站点设置、核心设置、附件设置、会员设置、性能选项、其他选项、添加新变量几个部分的内容。
说明: 站点设置:站点的常规设置,例如站点名称、站点的地址以及采用风格等选项; 核心设置:系统安装目录,加密设置以及时区和FTP配置等选项; 附件设置:涉及到系统管理员上传附件的文件格式、文件尺寸等选项设置; 会员设置:关于前台会员中心及会员注册相关设置; 性能选项:根据您服务器的配置情况合理的对站点性能进行设置能够保证网站能够访问更快、执行效率更高; 其他选项:过滤及IP限制等设置项目; 添加新变量:二次开发中涉及到的设置项; |
织梦的系统参数设置分为2个部分的内容,一个是页面显示的部分,另外一个是用于功能设置的,我们在系统模板中可以通过系统全局变量调用的标签来对一些显示类型的设置进行调用,例如我们在系统模板中使用{dede:global.cfg_description/}来调用网站后台设置中的网站描述部分的内容。功能设置部分的内容我们也会在系统设置中详细说明参数的相关描述。
我们在二次开发中也可以使用这些设置,通过$GLOBALS[’cfg_templets_dir’]全局变量来调用,非常方便。我们可以通过系统后台的添加变量来自由扩展全局变量,以便于我们进行系统的二次开发。
站点设置
核心设置
附件设置
会员设置
性能选项
(是/否)开启分页标题,开启会影响HTML生成速度(cfg_arcsptitle):如果开启了这个函数,将启用分页标题,我们在发布普通文章的时候会在编辑器看到添加“#p#副标题#e#”这个代码,开启后分页标题的功能才可以使用,不过需要在模板中加入{dede:pagetitle style=’select’/}标签
(是/否)开启长文章自动分页(cfg_arcautosp):开启后,系统自动判断内容大小进行自动分页,系统默认是关闭的
文章自动分页大小(单位:K)(cfg_arcautosp_size):开启自动分页后的内容长度,默认为5K,如果内容大于5K自动分到第二页
上级列表是否包含子类内容(cfg_list_son):列表页是否显示下级列表的内容,如果开启则显示下级列表的内容,系统默认是开启这个选项的
发布文档后自动更新网站主页(cfg_makeindex):发布内容后将自动更新网站主页,但这样比较影响系统性能,建议关闭这个选项自动进行更新
使用关键词关连文章(cfg_keyword_like):使用文档关键词来关联相应的文章,系统默认是关闭的
网站主页调用函数最大索引文档数 不适用于经常单栏目采集过多内容的网站 不启用本项此值设置为0即可(cfg_index_max):网站主页调用函数最大索引文档数 不适用于经常单栏目采集过多内容的网站,默认是10000即首页调用最大索引文档数为10000
Arclist标签调用缓存(0 不启用,大于0值为多少秒)(cfg_index_cache):arclist标签缓存,缓存将增强网站性能,但不能实时更新站点标签信息,系统默认设置为7200秒,可以根据自己需要设置,0为关闭缓存
是否启用模板缓存(cfg_tplcache):模板缓存将增强模板解析性能,但可能会影响生成速率,系统默认是开启模板缓存的,可以根据自己需要进行设置
模板缓存目录(cfg_tplcache_dir):模板缓存所保存的目录
发布、修改单个文档是否使用调用缓存(cfg_makesign_cache):发布、修改单个文档是否使用调用缓存
最大搜索检查文档数(cfg_search_max):最大搜索检查文档数,默认为50000
最大返回搜索结果数(cfg_search_maxrc):搜索后最大返回搜索结果数,默认为300
搜索间隔时间(秒、对网站所有用户)(cfg_search_time):搜索内容间隔时间,默认为3秒
是否启用副栏目(cfg_need_typeid2):开启后可以使用副栏目功能,同一文档能够在不同栏目中进行显示
Id文档ID,content 标签最终内容(修改此变量后必须更新系统缓存)(cfg_cache_type):如果用id,那么生成HTML是从缓存读取id并查询一次,如果是内容,即是指标签最终生成的html,这样就不用再查数据库
其他选项