织梦关键词内链、文档关键词维护无法使用的解决方法
发布时间:2021-07-25 编辑:√無∑情— 内容来源:收集于网络
PHP版本高于5.5无法使用关键词內链的解决方法
打开 /include/arc.archives.class.php 找到
$body = @preg_replace_callback("#(^|>)([^<]+)(?=<|$)#sU", "_highlight('\\2', \$karr, \$kaarr, '\\1')", $body);
改成
global $cfg_replace_num;if($cfg_replace_num > 0) { $query = "SELECT char_length(keyword) AS num,aid,keyword,rpurl,rank FROM dede_keywords WHERE rpurl<>'' ORDER BY num DESC"; $this->dsql->SetQuery($query); $this->dsql->Execute(); while($row = $this->dsql->GetArray()) { $key = trim($row['keyword']); $key_url=trim($row['rpurl']); $body = str_replace_limit($key, "<a href='$key_url' target='_blank'><u>$key</u></a>", $body, $cfg_replace_num); }
}
else
{ $query = "SELECT char_length(keyword) AS num,aid,keyword,rpurl,rank FROM dede_keywords WHERE rpurl<>'' ORDER BY num DESC"; $this->dsql->SetQuery($query); $this->dsql->Execute(); while($row = $this->dsql->GetArray()) { $key = trim($row['keyword']); $key_url=trim($row['rpurl']); $body = str_replace($key, "<a href='$key_url' target='_blank'><u>$key</u></a>", $body); }
}
继续找到
//高亮专用
在它上面加入
//指定替换次数功能
function str_replace_limit($search, $replace, $subject, $limit) {
if(is_array($search))
{
foreach($search as $k=>$v)
{
$search[$k] = '#(?<!>)(?!<)'. preg_quote($search[$k], '#'). '#';
}
}
else {
$search = '#(?<!>)(?!<)'. preg_quote($search, '#'). '#';
}
return preg_replace($search, $replace, $subject, $limit);
}
织梦二开教程分类
热门教程
- 织梦默认目录怎么更改?plus和include目录的重命名修改方法
- 织梦后台怎么简化?DEDECMS后台界面修改教程
- DEDECMS简略标题字数的修改方法
- 织梦前台模板里显示当前登录会员名
- 织梦DedeCms用SQL语句调用数据库任意内容教程+使用分析
- 织梦后台系统参数设置不能保存,要怎么操作?
- 织梦手机端实现搜索功能的方法
- 织梦模板标签结合str_replace()替换函数调用的方法
- 解决织梦DEDECMS中TAG标签字数长度限制的方法
- Dedecms增加随机问题防止被恶意注册会员
- 织梦默认【顶踩】功能美化修改
- dede会员密码找回邮件链接的前面多了一个域名
- dedecms搜索列表显示内容里面全部图片的方法
- dedecms文章列表显示内容里面全部图片的方法
- 织梦图集更改后不能显示略宿图的解决方法
- 织梦DedeCMS修改文章时怎么取消下载远程图片和资源
- 织梦dedeCMS大数据量时的优化方法
- 织梦实现直接显示PDF文件的方法










