前端之家收集整理的这篇文章主要介绍了
织梦DedeCMS栏目页目录式伪静态,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
伪静态一般是做
SEO的需求,当然也是为了让自己网站的
链接更清爽一些。对于使用织梦
Dedecms的朋友来说,
生成静态文件是一个选择,但是
静态文件不能实时更新,并且数据量一多,以织梦的
生成效率,
生成静态的时间也相对比较长。所以对于织梦栏目来说,伪静态是一个不错的选择。
今天
分享一下织梦
Dedecms栏目页如何实现目录式伪静态的
方法。程序实现伪静态,一般来说就是两个重要的步骤,一是让程序实现
静态化的
链接,二是让Web服务器实现对
链接的重写。
首先我们需要让织梦实现网站
链接的
静态化显示,对于织梦的栏目来说,
链接设置都在栏目的高级选项中设置的,如下图所示:
这次我们就用上图中的
文章命名规则里自己设置的规则来打造完美的
文章页伪静态URL,
修改文件\include\helpers\channelunit.helper.
PHP(
修改前请备份
文件),找到如下
代码:
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
|
替换为如下的
代码:
/**
* 文章栏目式伪静态
*/
$articleDir = MfTypedir($typedir);
$articleRule = strtolower($namerule);
if($articleRule=='')
{
$articleRule = strtolower($GLOBALS['cfg_df_namerule']);
}
if($typedir=='')
{
$articleDir = $GLOBALS['cfg_cmspath'].$GLOBALS['cfg_arcdir'];
}
$dtime = GetDateMk($tiMetag);
list($y,$m,$d) = explode('-',$dtime);
$arr_rpsource = array('{typedir}','{y}','{m}','{d}','{timestamp}','{aid}','{cc}');
$arr_rpvalues = array($articleDir,$y,$d,$tiMetag,$aid,dd2char($m.$d.$aid.$y));
if($filename != '')
{
$articleRule = dirname($articleRule).'/'.$filename.$GLOBALS['cfg_df_ext'];
}
$articleRule = str_replace($arr_rpsource,$arr_rpvalues,$articleRule);
if(preg_match("/\{p/",$articleRule))
{
$articleRule = str_replace('{pinyin}',GetPinyin($title).'_'.$aid,$articleRule);
$articleRule = str_replace('{py}',GetPinyin($title,1).'_'.$aid,$articleRule);
}
$articleUrl = '/'.preg_replace("/^\//",'',$articleRule);
return $articleUrl;
|
接下来我们要在系统基本参数->核心设置里设置一下开启伪静态,具体设置如下图:
在是否使用伪静态选项中,勾选是,就开启了伪静态
功能了,
添加文章时,按下图所示,勾选仅动态浏览,这样织梦系统才会是伪静态的。
经过以上的步骤之后,我们实现了织梦
文章的栏目目录式伪静态
显示,还需要让Web服务器对
链接进行重写,这时候就该写伪静态规则了。
经过上面的操作,我们就实现了织梦
文章页栏目目录式伪静态。
原文链接:https://www.f2er.com/dedecms/534066.html