欢迎光临好主题官网!致力于 WordPress 企业主题定制开发及 WP外贸模板下载。

WordPress 自动移除文章外链的 5 种方法(含 rel 属性详解)

文章目录

在运营 WordPress 网站的过程中,外链管理是一项非常重要的优化工作。特别是对 SEO、用户隐私、安全性有要求的站点,更需要合理控制站外链接的行为。

本文将介绍:

  • rel="noreferrer nofollow" 是什么?
  • 如何自动识别并移除文章中的站外链接?
  • WordPress 自动处理外链的代码实现

一、什么是 rel="noreferrer nofollow"

HTML 中 <a> 标签的 rel 属性用于定义链接与当前文档之间的关系,其中:

  • noreferrer:跳转链接时不发送 Referer 头,保护来源页面的隐私。
  • nofollow:告诉搜索引擎不要传递权重,不参与 SEO 排名计算。

示例:

<a href="https://example.com" rel="noreferrer nofollow" target="_blank">访问示例网站</a>

二、为什么要移除 WordPress 中的站外链接?

  • 防止垃圾链接伤害 SEO。
  • 提高站内权重集中度。
  • 防止广告或推广内容泄露本站权重。
  • 保护用户隐私,避免跳转记录被第三方收集。

三、自动移除文章外链的方法

✅ 实现代码(添加到 functions.php):

function remove_external_links_from_content($content) {
    $site_url = parse_url(home_url(), PHP_URL_HOST);

    return preg_replace_callback('/<a[^>]+href=["\'](.*?)["\'][^>]*>(.*?)<\/a>/is', function ($matches) use ($site_url) {
        $href = $matches[1];
        $link_text = $matches[2];

        if (strpos($href, $site_url) === false) {
            return $link_text; // 非本站链接,移除超链接,仅保留文本
        }

        return $matches[0]; // 本站链接保留
    }, $content);
}
add_filter('the_content', 'remove_external_links_from_content');

 

💡 效果:

  • 所有文章中的外链将自动去除 <a> 标签,仅保留链接文字;
  • 本站链接不受影响。

四、拓展方案(可选)

除了完全移除站外链接,还有其他处理思路:

1. 仅添加 rel="nofollow noreferrer"

你可以使用代码为外链自动添加 rel 属性而不是移除链接

function add_nofollow_noreferrer_to_external_links($content) {
    $site_url = parse_url(home_url(), PHP_URL_HOST);

    return preg_replace_callback('/<a\s+[^>]*href=["\'](.*?)["\'][^>]*>/i', function ($matches) use ($site_url) {
        $url = $matches[1];
        $tag = $matches[0];

        if (strpos($url, $site_url) === false) {
            // 添加 rel 属性
            if (strpos($tag, 'rel=') === false) {
                $tag = str_replace('<a ', '<a rel="nofollow noreferrer" ', $tag);
            }
        }

        return $tag;
    }, $content);
}
add_filter('the_content', 'add_nofollow_noreferrer_to_external_links');

2. 只处理特定文章类型(如仅对 post 生效)

你可以在处理函数里加个判断:

if (!is_singular('post')) return $content;

3. 仅在后台编辑时提示站外链接存在

你也可以写一个脚本,在编辑器中提示外链存在,而不修改内容本身。

五、总结

外链控制在 WordPress 中是一个非常实用的优化手段。你可以根据站点的实际需求,选择:

  • 完全移除站外链接
  • 保留链接但加上 rel 属性
  • 仅对特定文章类型或用户角色启用处理逻辑

这样不仅能提升 SEO 表现,还能提升网站的安全性与用户信任度。

如果你觉得这篇文章有帮助,欢迎分享和收藏 👍

本文由 好主题 原创整理,致力于分享实用的 WordPress 建站知识与主题开发经验。 我们专注于提供高质量的 WordPress企业主题 资源,帮助中小企业轻松构建专业网站。 转载请注明来源,并保留原文链接,感谢您的支持与理解。

发表回复

相关文章
主题推荐
还没有账号?

会员注册

成为会员,获得更多专属优惠!

验证码: 加载中... =

已有账号?