本方法给实现网站外链出站跳转效果(代码也可自己美化或选择其他模板),最为主要的是本方法可集中网站权重,避免权重流失的重要优化方向,此方式不仅仅只针对WordPress,其他网站都可参考下面方法,此教程可防止自己的网站外链影响自己WordPress博客(任意网站)的权重,导致搜索引擎降权!

注:如需使用360模板吧样式模板请下载附件替换下面go.php文件即可!

教程开始:

1.在WordPress的根目录(其他网站也一样)下新建一个go.php文件,代码如下:

<?php
/**
 * User: 360模板吧
 * Url:https://www.360mb.net
 * Date: 2021/2/13
 * Time: 19:59
 */
$t_url = preg_replace( '/^url=(.*)$/i', '$1', $_SERVER["QUERY_STRING"] );
if ( ! empty( $t_url ) ) {
	preg_match( '/(http|https):\/\//', $t_url, $matches );
	if ( $matches ) {
		$url   = $t_url;
		$title = '页面加载中,请稍候...';
	} else {
		preg_match( '/\./i', $t_url, $matche );
		if ( $matche ) {
			$url   = 'http://' . $t_url;
			$title = '页面加载中,请稍候...';
		} else {
			$url   = 'https://www.360mb.net';
			$title = '参数错误,正在返回首页...';
		}
	}
} else {
	$title = '参数缺失,正在返回首页...';
	$url   = 'https://www.360mb.net';
}
?>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="refresh" content="1;url='<?php echo $url; ?>';">
    <title><?php echo $title; ?></title>
    <style>
        body {
            background: #000
        }

        .loading {
            -webkit-animation: fadein 2s;
            -moz-animation: fadein 2s;
            -o-animation: fadein 2s;
            animation: fadein 2s
        }

        @-moz-keyframes fadein {
            from {
                opacity: 0
            }
            to {
                opacity: 1
            }
        }

        @-webkit-keyframes fadein {
            from {
                opacity: 0
            }
            to {
                opacity: 1
            }
        }

        @-o-keyframes fadein {
            from {
                opacity: 0
            }
            to {
                opacity: 1
            }
        }

        @keyframes fadein {
            from {
                opacity: 0
            }
            to {
                opacity: 1
            }
        }

        .spinner-wrapper {
            position: absolute;
            top: 0;
            left: 0;
            z-index: 300;
            height: 100%;
            min-width: 100%;
            min-height: 100%;
            background: rgba(255, 255, 255, 0.93)
        }

        .spinner-text {
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -90px;
            margin-top: 2px;
            color: #BBB;
            letter-spacing: 1px;
            font-weight: 700;
            font-size: 36px;
            font-family: Arial
        }

        .spinner {
            position: absolute;
            top: 50%;
            left: 50%;
            display: block;
            margin-left: -160px;
            width: 1px;
            height: 1px;
            border: 25px solid rgba(100, 100, 100, 0.2);
            -webkit-border-radius: 50px;
            -moz-border-radius: 50px;
            border-radius: 50px;
            border-left-color: transparent;
            border-right-color: transparent;
            -webkit-animation: spin 1.5s infinite;
            -moz-animation: spin 1.5s infinite;
            animation: spin 1.5s infinite
        }

        @-webkit-keyframes spin {
            0%, 100% {
                -webkit-transform: rotate(0deg) scale(1)
            }
            50% {
                -webkit-transform: rotate(720deg) scale(0.6)
            }
        }

        @-moz-keyframes spin {
            0%, 100% {
                -moz-transform: rotate(0deg) scale(1)
            }
            50% {
                -moz-transform: rotate(720deg) scale(0.6)
            }
        }

        @-o-keyframes spin {
            0%, 100% {
                -o-transform: rotate(0deg) scale(1)
            }
            50% {
                -o-transform: rotate(720deg) scale(0.6)
            }
        }

        @keyframes spin {
            0%, 100% {
                transform: rotate(0deg) scale(1)
            }
            50% {
                transform: rotate(720deg) scale(0.6)
            }
        }
    </style>
</head>
<body>
<div class="loading">
    <div class="spinner-wrapper">
        <span class="spinner-text">页面加载中,请稍候...</span>
        <span class="spinner"></span>
    </div>
</div>
</body>
</html>

调用说明:只需在网站外链地址加上“你的域名/go.php?url=外链域名”即可

实例展示:[wm_wpbutton link="https://www.360mb.net/go.php?url=https://www.baidu.com" target="blank" variation="yellow"]GO跳转[/wm_wpbutton]

其他说明:

为了防止蜘蛛抓取,在 Robots 禁止所有蜘蛛抓取 /go?url !

Disallow: /go?url

2.如果想在文章中设置自动跳转可在主题根目录functions.php文件添加如下代码即可实现自动识别外链并跳转:

 

//外链优化代码
add_filter('the_content','the_content_nofollow',999);
function the_content_nofollow($content) {
	preg_match_all('/<a(.*?)href="(.*?)"(.*?)>/',$content,$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)){
				$content=str_replace("href=\"$val\"", "href=\"".home_url()."/go.php?url=$val\" ",$content);
			}
		}
	}
	return $content;
}

延伸阅读:

插件也可实现上述功能,大家可在后台搜索下载:Simple URLs插件、Link-Hopper插件、Pretty Link Lite插件、Affiliate Link Cloaking插件、WP No External Links插件、Go Codes插件这几个插件都可实现,这里就不多为插件做介绍了。

 

1.使用本站下载的源码仅限于个人学习和非商业用途。
2.禁止将本站下载的源码用于搭建或支持任何违法、淫秽、暴力或侵犯他人合法权益的网站或应用。
3.使用本站下载的源码需遵守国家法律法规及相关规定,不得从事任何违法活动。
4.如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。