WordPress评论网站外链新窗口打开,内链跳转的方法

25次阅读
2024年09月05日 11:00:01

共计 1365 个字符,预计需要花费 4 分钟才能阅读完成。

有时候WordPress评论里会出现很多广告外链,以及外部网站链接,虽然已经加了nofollow标签,但是一些外链,还是或多或少对自己网站有点影响,而且也希望在新窗口打开这些链接,所以就想写个钩子把这些外部链接全部加上内部跳转,并且全部在新窗口打开。

添加外链跳转页面

第一步是要生成一个统一个WordPress外链跳转的页面,这个可以直接参考WordPress实现外链Go跳转效果。在网页打开外部链接的时候添加GO跳转提示的代码实现方式

评论与评论者的外部链接添加跳转效果

直接在functions.php文件里添加下面两端代码即可。

评论内容中的外部链接

add_filter( 'comment_text', 'add_redirect_comment_link', 99 );
function add_redirect_comment_link( $text = '' ) {
	preg_match_all( '/<a(.*?)href="(.*?)"(.*?)>/', $text, $matches );
	if ( $matches ) {
		foreach ( $matches[2] as $val ) {
			if ( strpos( $val, '://' ) !== false && strpos( $val, home_url() ) === false && ! preg_match( '/.(jpg|jepg|png|ico|bmp|gif|tiff)/i', $val ) ) {
				$text = str_replace( "href="$val"", "href="" . home_url() . "/go/go.php?url=$val" ", $text );
			}
		}
		foreach ( $matches[1] as $val ) {
			$text = str_replace( "<a".$val, "<a".$val." target="_blank" ", $text );
		}
	}
	return $text;
}

评论者的链接

add_filter( 'get_comment_author_link', 'add_redirect_author_link', 5 );
function add_redirect_author_link( $text = '' ) {
	preg_match_all( "/<a(.*?)href='(.*?)'(.*?)>/", $text, $matches );
	if ( $matches ) {
		foreach ( $matches[2] as $val ) {
			if ( strpos( $val, '://' ) !== false && strpos( $val, home_url() ) === false && ! preg_match( '/.(jpg|jepg|png|ico|bmp|gif|tiff)/i', $val ) ) {
				$text = str_replace( "href='$val'", "href='" . home_url() . "/go/go.php?url=$val' ", $text );
			}
		}
		foreach ( $matches[1] as $val ) {
			$text = str_replace( "<a".$val, "<a".$val." target="_blank" ", $text );
		}
	}
	return $text;
}

添加完这两段代码就可以自动过滤评论者链接以及评论内容中的外部链接,自动添加跳转效果并在新窗口中打开了。

正文完
 0
鹿泽
版权声明:本站原创文章,本文由 鹿泽 于 2024年9月5日 11:00:01 发表,共计 1365 字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。
如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
最新文章
网站优化seo推广服务如何做好内链?

网站优化seo推广服务如何做好内链?

在一个网站刚刚建设的初期,网站内链的建设工作尤为重要,可以说网站内链做得好SEO就成功了一半。今天就来讲讲网站...
WordPress博客主题二次元风-lolimeow主题更新10.1版,重构样式

WordPress博客主题二次元风-lolimeow主题更新10.1版,重构样式

一个WordPress博客主题二次元风主题,本站之前启用过,后面更换了,不过很好看,适合大家选择使用: 202...
专业优化公司seo是怎么做好404页面的?

专业优化公司seo是怎么做好404页面的?

404页面的目的是:告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其它页面而不是关闭窗口离开。...
网站搜索优化seo如何做好内部链接优化?

网站搜索优化seo如何做好内部链接优化?

网站内部链接的布局很多做SEO的朋友都知道,非常重要。网站想做的越大,就要更加重视内部链接的布局。因为良好的内...
影响关键词优化根本的排序因素

影响关键词优化根本的排序因素

对于像百度搜索来说,并没有排序这一说法,搜索引擎认为排序是在特定的关键词下网站内容的位置,而关键词是由用户搜索...