Discuz 插件优化:隐藏网盘分享链接,提高论坛安全性
Discuz 插件:隐藏网盘分享链接,提高论坛安全性
该插件针对 Discuz 论坛,可以有效隐藏非作者和回复者不可见的网盘分享链接,例如百度网盘、115 网盘、阿里云盘等。该插件可以有效保护分享者隐私,提高论坛安全性。
插件功能
- 隐藏帖子中包含的百度网盘、115 网盘、阿里云盘链接,仅允许帖子作者和回复者查看。
- 替换链接为 '网盘分享链接仅楼主和回帖人可见',避免链接泄露。
- 移除所有 a 标签,确保替换后的文本不再是超链接。
使用方法
- 下载插件代码并上传至 Discuz 插件目录。
- 进入 Discuz 后台,启用该插件。
代码示例
class plugin_wangpancheck_forum extends plugin_wangpancheck {
var $thread_author_id;
function viewthread_postbottom_output() {
global $_G, $postlist, $bestpost;
$bestpost['message'] = '';
foreach ($postlist as &$post) {
// 如果是主题的第一篇帖子,保存楼主的ID
if ($post['first']) {
$this->thread_author_id = $post['authorid'];
}
// 判断当前用户是否是帖子回复者或者楼主
$isAuthorOrThreadAuthor = ($_G['uid'] == $post['authorid']) || ($_G['uid'] == $this->thread_author_id);
// 如果不是作者或主题作者,则替换含有 'baidu.com', '115.com' 或 'aliyundrive.com' 的整个链接
if (!$isAuthorOrThreadAuthor) {
$replace_domains = array('baidu.com', '115.com', 'aliyundrive.com');
$replace_pattern = '/http[s]?://[^ ]*(' . implode('|', $replace_domains) . ')[^ ]*/i';
$post['message'] = preg_replace($replace_pattern, '***网盘分享链接仅楼主和回帖人可见***', $post['message']);
// 移除所有的 a 标签以确保替换后的文本不再是超链接
$post['message'] = preg_replace('/<a[^>]*>|</a>/i', '', $post['message']);
}
}
}
}
注意事项
- 该插件仅适用于 Discuz 论坛。
- 确保插件代码完整,并正确上传到 Discuz 插件目录。
- 使用前请备份论坛数据,避免意外情况发生。
联系方式
如果您有任何问题,请随时联系我们。
原文地址: https://www.cveoy.top/t/topic/oYir 著作权归作者所有。请勿转载和采集!