如何在帝国CMS中手动删除非本站链接而无需使用插件?

avatar
作者
筋斗云
阅读量:0
在帝国CMS后台,通过内容管理功能找到要删除的非本站链接内容,手动编辑或批量替换后保存即可。

帝国CMS是一款功能强大的网站内容管理系统,广泛应用于各类网站的建设和管理中,在使用过程中,有时需要删除内容中的非本站链接,以确保内容的独立性和完整性,以下是详细的操作步骤:

如何在帝国CMS中手动删除非本站链接而无需使用插件?

修改hinfofun.php文件

步骤 描述
1 打开文件\e\class\hinfofun.php,注意不要使用记事本编辑.php文件。
2 在文件最后即“?>”之前,添加如下代码:
``php
function Replace_Links($body) {
$host_rule = $_SERVER['HTTP_HOST'];
$arr = '';
preg_match_all("#]*)>(.*)#iU", $body, $arr);
if( is_array($arr[0]) ) {
$rparr = array();
$tgarr = array();
foreach($arr[0] as $i=>$v) {
if( $host_rule != '' && preg_match('#'.$host_rule.'#i', $arr[1][$i]) ) {
continue;
} else {
$rparr[] = $v;
$tgarr[] = $arr[2][$i];
}
}
if( !empty($rparr) ) {
$body = str_replace($rparr, $tgarr, $body);
}
}
$arr = $rparr = $tgarr = '';
return $body;
}
``

调用函数替换链接

| 步骤 | 描述 |

|------|------|

| 1 | 查找if(!$add[id]||!$add[title]||!$add[classid]||!$add[filename]) 在其上面添加如下代码:<br>``php<br> //帝国删除非本站链接 By 跟版网(www.kuoyl.com QQ 2655101040)<br> $add['newstext'] = Replace_Links($add['newstext']);`` |

| 2 | 查找$ret_r=ReturnAddF($add,$class_r[$add[classid]][modid],$userid,$username,0,0,1);//返回自定义字段 在其上面添加如下代码:<br>``php<br> //帝国删除非本站链接 By 跟版网(kuoyl.com QQ 2655101040)<br> $add['newstext'] = Replace_Links($add['newstext']);`` |

如何在帝国CMS中手动删除非本站链接而无需使用插件?

通过上述步骤,可以有效地在帝国CMS中删除非本站链接,这种方法虽然针对的是7.2版本,但基本原理在其他版本中也可能适用,需要注意的是,修改系统文件时应谨慎操作,并建议备份原始文件以防万一。

相关问题与解答

1、此方法是否适用于所有版本的帝国CMS?

解答:此方法主要针对帝国CMS7.2版进行说明,其他版本可能不完全适用,不同版本的代码结构和功能实现可能有所不同,因此在应用前建议进行充分的测试和验证。

如何在帝国CMS中手动删除非本站链接而无需使用插件?

2、如何恢复原始的PHP文件?

解答:在进行任何修改之前,应先备份原始的PHP文件,如果需要恢复,只需将备份的文件重新上传覆盖即可,确保在修改过程中遵循最佳实践,避免不必要的风险。

到此,以上就是小编对于“帝国CMS删除内容非本站链接的方法(非插件)”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!