在上一篇《DeDeBIZ假伪静态短链优化织梦教程》教程中,实现了织梦BIZ的高级玩法,但是由于列表页重复,不得不再次出一篇解决教程。
默认页的名称重复
前置条件:当后台-系统设置-核心设置-栏目生成目录形式:选否时,保存在同一目录下,index.html 重复的解决办法。
打开 /admin/templets/catalog_add.htm 搜索
<td><input type="text" name="defaultname" value="index.html" class="admin-input-lg"></td>
在添加栏目的时候,设置随机默认页的名称,把它改为
<td><input type="text" name="defaultname" value="<?php echo $cfg_typedir_df == 'N' ? ''.chr(mt_rand(ord('a'),ord('z'))).chr(mt_rand(ord('a'),ord('z'))).chr(mt_rand(ord('a'),ord('z'))).chr(mt_rand(ord('a'),ord('z'))).chr(mt_rand(ord('a'),ord('z'))).'' : 'index'; ?>.html" class="admin-input-lg"></td>
当启用显示默认页的时候,各栏目的默认页就都不一样啦。
注意:这样改。只对新建栏目有效,已经建好的那些栏目,得要手动修改默认页的名称。也可以使用SQL修改,后台-系统设置-SQL命令工具-执行
UPDATE `#@__arctype` SET `defaultname` = 'index3.html' WHERE `id` = 3
说明:`defaultname` = '是你想改的名称.html' WHERE `id` = 这个是栏目ID
这样改,比手动编辑,修改再保存,确实是快得多。
静态网站列表重复
1.1、打开 /system/archive/listview.class.php 搜索
copy($list_1, $indexname);
在它下面加入
unlink($list_1);
1.2、继续搜索
$tnamerule = preg_replace("/^(.*)\//", '', $tnamerule);
在它下面加入
$typedir = GetOneTypeUrlA($this->Fields);
1.3、继续搜索
$prepagenum, $tnamerule
改为
$prepagenum,($prepagenum==1) ? $typedir : $tnamerule
1.4、继续搜索
str_replace("{page}", 1, $tnamerule)
改为
$typedir
1.5、继续搜索
$mjj, $tnamerule
有2处,都改为
$mjj,($mjj==1) ? $typedir : $tnamerule
1.6、继续搜索
$j, $tnamerule
改为
$j,($j==1) ? $typedir : $tnamerule
完成了。
+9 9 个回复 | 最后更新于 2024-12-11
登录后方可回帖