客户有这样一个需求:在要展示的页面把一些敏感的词给屏蔽掉。自己可以自定义在文本文件里添加敏感词。其实这个需求我跟用户沟通过,说使用Js直接操作会更方便点,他说那样用户是看不到了,可是HTML源码里还是会有。所以具体的操作如下:
客户有这样一个需求:在要展示的页面把一些敏感的词给屏蔽掉。自己可以自定义在文本文件里添加敏感词。
其实这个需求我跟用户沟通过,说使用Js直接操作会更方便点,他说那样用户是看不到了,可是HTML源码里还是会有。所以具体的操作如下:
1、在网站根目录建一个mgc.txt 文本文件。
2、把下面的代码复制到/e/class/userfun.php文件
function sReplaceMgc($str) { if(!$str) return $str; $mgc = file_get_contents(ECMS_PATH.'mgc.txt'); if(!$mgc) return $str; $mgcR = array_filter(explode(PHP_EOL,$mgc)); return str_replace($mgcR,'*',$str);}
静态生成部分:主要修改/e/class/functions.php
文件
首页/封面页/专题: 搜索 “NewsBq
”函数 找到该函数下 “//解析代码
” 然后添加代码:$string=sReplaceMgc($string);
列表页:搜索“ListHtml
”函数,找到该函数下 “//替换分页数
” 然后添加代码:$string=sReplaceMgc($string);
内容页:搜索“GetHtml
”函数,找到该函数下“//写文件
”位置(共2处),添加代码:$string=sReplaceMgc($string);
动态/伪静态生成部分:
首页:打开e/data/template/dtindexpage.txt
文件,找到“//位置导航
”,在其下面两行添加如下代码:$string=sReplaceMgc($string);
列表页/封面页:打开 /e/action/ListInfo/index.php
拉到最底部,找到“//列表:缓存
” 添加代码:$string=sReplaceMgc($string);
内容页:打开 /e/action/ShowInfo.php
,拉到最底部,找到“//缓存
” 约419行,添加代码:$string=sReplaceMgc($string);