Discuz! X 保留SEO设置里title标题中空格的方法
分类 网站技术/村民张先生 发布于 2019-10-10 11:48
打开 source\class\helper\helper_seo.php ,查找:
public static function strreplace_strip_split($searchs, $replaces, $str) { $searchspace = array('((\s*\-\s*)+)', '((\s*\,\s*)+)', '((\s*\|\s*)+)', '((\s*\t\s*)+)', '((\s*_\s*)+)'); $replacespace = array('-', ',', '|', ' ', '_'); return trim(preg_replace($searchspace, $replacespace, str_replace($searchs, $replaces, $str)), ' ,-|_'); }
该代码将 0个以上空格-0个以上空格 替换为 - ,即只要前后有空格都过滤掉。
替换为:
public static function strreplace_strip_split($searchs, $replaces, $str) { $searchspace = array('((\s+\-\s+)+)', '((\s*\,\s+)+)', '((\s+\|\s+)+)', '((\s*\t\s*)+)', '((\s*_\s*)+)'); $replacespace = array(' - ', ', ', ' | ', ' ', '_'); return trim(preg_replace($searchspace, $replacespace, str_replace($searchs, $replaces, $str)), ' ,-|_'); }
修改后,将 1个以上空格-1个以上空格 替换为 - (前后保留一个空格),将 0个以上空格,1个以上空格 替换为 , (过滤掉逗号前的空格,逗号后保留一个空格),其它自行理解。
修改后更规范,不影响设置中未添加空格的情况!
欢迎谈谈你的看法(无须登录) *正文中请勿包含"http://"否则将被拦截