全百科精品资源分享
免费优质资源下载平台

WordPress纯代码外链跳转效果的实现

文章目录

这个访问外链自动进行一个内部跳转的效果,这样不仅网站的用户体验度增加,而且更加显得正规化, 还可以避免自己网站权重的流失,符合SEO优化规则,当然有些部分主题是自带有外链跳转效果的就不说了。

WordPress纯代码外链跳转效果的实现演示

WordPress纯代码外链跳转效果的实现

WordPress纯代码外链跳转效果的实现

WordPress纯代码外链跳转效果的实现步骤

1、新建PHP文档

新建 go.php 文档,添加以下PHP代码,并且上传到网站根目录。

<?php 
/**
 * Modify by 全百科.
 * Site: www.quanbake.com
 * Date: 2017-05-09
 */if(strlen($_SERVER['REQUEST_URI']) > 384 ||
    strpos($_SERVER['REQUEST_URI'], "eval(") ||
strpos($_SERVER['REQUEST_URI'], "base64")) {
@header("HTTP/1.1 414 Request-URI Too Long");
@header("Status: 414 Request-URI Too Long");
@header("Connection: Close");
@exit;
}
//通过QUERY_STRING取得完整的传入数据,然后取得url=之后的所有值,兼容性更好
$t_url = preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]);
  
//此处可以自定义一些特别的外链,不需要可以删除以下5行
if($t_url=="quanbaike" ) {
   $t_url="http://quanbaike.com";
} elseif($t_url=="quanbaike") {
   $t_url="http://www.quanbaike.com/";
}
  
//数据处理
if(!empty($t_url)) {
    //判断取值是否加密
    if ($t_url == base64_encode(base64_decode($t_url))) {
        $t_url =  base64_decode($t_url);
    }
    //对取值进行网址校验和判断
    preg_match('/^(http|https|thunder|qqdl|ed2k|Flashget|qbrowser):\/\//i',$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 = 'http://'.$_SERVER['HTTP_HOST'];
        $title='参数错误,正在返回首页...';
    }
}
} else {
    $title = '参数缺失,正在返回首页...';
    $url = 'http://'.$_SERVER['HTTP_HOST'];
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="robots" content="noindex, nofollow" />
<noscript><meta http-equiv="refresh" content="1;url='<?php echo $url;?>';"></noscript>
<script>
function link_jump()
{
    //禁止其他网站使用我们的跳转页面
    var MyHOST = new RegExp("<?php echo $_SERVER['HTTP_HOST']; ?>");
    if (!MyHOST.test(document.referrer)) {
         location.href="http://" + MyHOST;
    }
    location.href="<?php echo $url;?>";
}
//延时1S跳转,可自行修改延时时间
setTimeout(link_jump, 1000);
//延时50S关闭跳转页面,用于文件下载后不会关闭跳转页的问题
setTimeout(function(){window.opener=null;window.close();}, 50000);
</script>
<title><?php echo $title;?></title>
<style type="text/css">
body{background:#555}.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:45%;left:50%;margin-left:-100px;margin-top:2px;color:#000;letter-spacing:1px;font-size:20px;font-family:Arial}.spinner{position:absolute;top:45%;left:50%;display:block;margin-left:-160px;width:1px;height:1px;border:20px solid rgba(255,0,0,1);-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>

2、使用方法

该PHP文件的使用可以在添加外链的时候手动添加跳转,同时跳转样式可以自行修改。
可用的外链跳转形式为: {本站地址}/go.php?{外链地址} 或 {本站地址}/go.php?url={外链地址}
在文章添加外链的时候,只要按照以上格式添加即可

不演示没真相:
https://www.baidu.com/

博文中外链自动识别

在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/?url=$val\" ",$content);  
            }  
        }  
    }  
    return $content;  
}
// 下载外链跳转
function links_nofollow($url) {
    if(strpos($url,'://')!==false && strpos($url,'guihet.com')===false && !preg_match('/(ed2k|thunder|Flashget|flashget|qqdl):\/\//i',$url)) {
$url = str_replace($url, home_url()."/go/".base64_encode($url),$url);
     }
    return $url;
}

要查看效果点击本站之前文章内的任意一个外站的链接即可.更多外链跳转效果样式
或者试试这个 https://www.baidu.com/

Download Nulled WordPress Themes
Download Premium WordPress Themes Free
Download Best WordPress Themes Free Download
Download WordPress Themes
free download udemy course
download micromax firmware
Free Download WordPress Themes
udemy course download free

本文由全百科网分享提供,分享更多精品资源,帮助你我共同成长。

赞(0)
本站内容均来自网络收集,转载内容不代表本网站的观点及意见,仅供用户参考和借鉴。如对稿件内容及版权问题有疑议,请及时联系全百科官方邮箱: smtsg@foxmail.com全百科网 » WordPress纯代码外链跳转效果的实现

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #-499

    I feel that is one of the so much important information for me.
    And i’m glad studying your article. However wanna remark on some general issues, The site
    style is perfect, the articles is really excellent : D.

    Good activity, cheers