相信很多站长朋友在使用织梦dedecms系统制作网站时,都会遇到详情页面上一篇、下一篇需要显示英文的情况,尤其是需要制作中英文网站时需要实现显示中英文上一篇、下一篇。这是就需涉及针对分页文件底层代码部分的修改,今天笔者就跟大家分享一下修改方法,以供参考。
第一、需要修改include\arc.archives.class.php文件
1、打开include\arc.archives.class.php,找到
$this->dtp->Assign($i,$this->GetPreNext($ctag->GetAtt(’get’)));
更改为
$this->dtp->Assign($i,$this->GetPreNext($ctag->GetAtt(’get’), $ctag->GetAtt(’sitelang’)));
2、找函数GetPreNext找到
function GetPreNext($gtype=’’)
更改为
function GetPreNext($gtype=’’, $site_lang)
3、需要增加判断代码了直接在
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 = ’’;...........}
4、将if(is_array($preRow))里面的上一篇下一篇 上一篇:没有了,下一篇:没有换成变量。
找到
$this->PreNext[’pre’] = "上一篇:{$preRow[’title’]} ";
改为
$this->PreNext[’pre’] = $str_pre .":{$preRow[’title’]} ";
找到
$this->PreNext[’pre’] = "上一篇:没有了";
改为
$this->PreNext[’pre’] = $str_pre_words;
找到
$this->PreNext[’next’] = "下一篇:{$nextRow[’title’]} ";
改为
$this->PreNext[’next’] = $str_next . ":{$nextRow[’title’]} ";
找到
$this->PreNext[’next’] = "下一篇:没有了";
改为
$this->PreNext[’next’] = $str_next_words;
到这里,英文上一篇下一篇,也已经完成。
第二、在前台模板页面如何调用中英文上一篇下一篇
打开templets\default\article_article.htm文件将
{dede:prenext get=’pre’/}{dede:prenext get=’next’/}
更改为
{dede:prenext get=’pre’ sitelang=’en’/}{dede:prenext get=’next’ sitelang=’en’/}
到这里,英文上一篇下一篇,也已经完成,默认情况下是显示中文。