您的位置 首页 php

WordPress防红系统跳转页面和引导跳转页面go源码美化

源码介绍

  WordPress防红系统跳转页面和引导跳转页面gophp-html源码美化版,双端自适应。自动文章内的外链加入加密的跳转链接,其他网站也可以用。

使用教程:

1、网站根目录新建go文件夹

2、go目录里新建index.php

3、index.php里的代码如下:

 <?php
/*自动跳转页面
*@copyright (c) Emlog All Rights Reserved *///自定义跳转地址
$cars = array(
   array("qcloud",'#39;),
   array("aliyun",'#39;),
   );

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 = htmlspecialchars(preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]));

//此处可以自定义一些特别的外链,不需要可以删除以下5行
foreach($cars as $k=>$val){
    if($t_url==$val[0] ) {
      $t_url =  $val[1];
      $t_vip = 1;
    }
}
 
//数据处理
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='#39;.$t_url;
        $title='页面加载中,请稍候...';
    } else {
        $url = '#39;.$_SERVER['HTTP_HOST'];
        $title='参数错误,正在返回首页...';
    }
}
} else {
    $title = '参数缺失,正在返回首页...';
    $url = '#39;.$_SERVER['HTTP_HOST'];
}
?>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="robots" content="noindex, nofollow" />
<noscript><meta http-equiv="refresh" content="1;url='<?php%20echo%20$url;?>';"></noscript>
<link rel="icon" type="image/x-icon" href="#34;>
<meta charset="UTF-8">
<!--[if IE 8]>
<style>
.ie8 .alert-circle,.ie8 .alert-footer{display:none}.ie8 .alert-box{padding-top:75px}.ie8 .alert-sec-text{top:45px}
</style>
<![endif]-->
<title><?php echo $title;?></title>
<style>
body {
    margin: 0;
    padding: 0;
    background: #E6EAEB;
    font-family: Arial, '微软雅黑', '宋体', sans-serif
}
.alert-box {
    display: none;
    position: relative;
    margin: 135px auto 0;
    padding: 150px 83px 22px;
    border-radius: 10px;
    background: #FFF;
    box-shadow: 5px 9px 17px rgba(102,102,102,0.75);
    width: 286px;
    color: #FFF;
    text-align: center
}
.alert-box p {
    margin: 0
}
.alert-circle {
    position: absolute;
    top: -50px;
    left: 111px
}
.alert-sec-circle {
    stroke-dashoffset: 0;
    stroke-dasharray: 735;
    transition: stroke-dashoffset 1s linear
}
.alert-sec-text {
    position: absolute;
    top: 11px;
    left: 190px;
    width: 76px;
    color: #000;
    font-size: 68px
}
.alert-sec-unit {
    font-size: 34px
}
.alert-body {
    margin: 35px 0
}
.alert-head {
    color: #242424;
    font-size: 28px
}
.alert-concent {
    margin: 25px 0 14px;
    color: #7B7B7B;
    font-size: 18px
}
.alert-concent p {
    line-height: 27px
}
.alert-btn {
    display: block;
    border-radius: 10px;
    background-color: #4AB0F7;
    height: 55px;
    line-height: 55px;
    width: 286px;
    color: #FFF;
    font-size: 20px;
    text-decoration: none;
    letter-spacing: 2px
}
.alert-btn:hover {
    background-color: #6BC2FF
}
.alert-footer {
    margin: 0 auto;
    height: 42px;
    width: 120px
}
.alert-footer-icon {
    float: left
}
.alert-footer-text {
    float: left;
    border-left: 2px solid #EEE;
    padding: 3px 0 0 5px;
    height: 40px;
    color: #0B85CC;
    font-size: 12px;
    text-align: left
}
.alert-footer-text p {
    color: #7A7A7A;
    font-size: 22px;
    line-height: 18px
}
@media screen and (max-width: 700px) {
    .alert-box{
        width: 180px;
    }
    .alert-circle{
        top: -80px;
        left: 60px;
    }
    .alert-sec-text {
        left: 145px;
        width: auto;
        font-size: 38px;
    }
    .alert-head {
        font-size: 18px;
    }
    .alert-box p {
        font-size: 16px;
    }    
    .alert-btn {
        width: auto;
    }
}
</style>
</head>
<body class="ie8" style="">
<div class="main">
    <div id="js-alert-box" class="alert-box" style="display:block">
        <svg class="alert-circle" width="234" height="234">
        <circle cx="117" cy="117" r="108" fill="#FFF" stroke="#43AEFA" stroke-width="17"></circle>
        <circle id="js-sec-circle" class="alert-sec-circle" cx="117" cy="117" r="108" fill="transparent" stroke="#F4F1F1" stroke-width="18" transform="rotate(-90 117 117)"></circle>
        <text class="alert-sec-unit" x="98" y="172" fill="#BDBDBD">秒</text>
    </svg>
        <div id="js-sec-text" class="alert-sec-text">
            3
        </div>
        <div class="alert-body">
            <div id="js-alert-head" class="alert-head">
                <?php echo $title;?>
            </div>
            <div class="alert-concent">
                <p>
                    外部网站,注意安全!
                </p>
            </div>
            <a id="js-alert-btn" class="alert-btn" href="<?php%20echo%20$url;?>">立即前往菜鸟站长之家</a>
        </div>
        <div class="alert-footer clearfix">
            <svg width="46px" height="42px" class="alert-footer-icon"><circle fill-rule="evenodd" clip-rule="evenodd" fill="#7B7B7B" stroke="#DEDFE0" stroke-width="2" stroke-miterlimit="10" cx="21.917" cy="21.25" r="17"></circle><path fill="#FFF" d="M22.907,27.83h-1.98l0.3-2.92c-0.37-0.22-0.61-0.63-0.61-1.1c0-0.71,0.58-1.29,1.3-1.29s1.3,0.58,1.3,1.29 c0,0.47-0.24,0.88-0.61,1.1L22.907,27.83z M18.327,17.51c0-1.98,1.61-3.59,3.59-3.59s3.59,1.61,3.59,3.59v2.59h-7.18V17.51z M27.687,20.1v-2.59c0-3.18-2.59-5.76-5.77-5.76s-5.76,2.58-5.76,5.76v2.59h-1.24v10.65h14V20.1H27.687z"></path><circle fill-rule="evenodd" clip-rule="evenodd" fill="#FEFEFE" cx="35.417" cy="10.75" r="6.5"></circle><polygon fill="#7B7B7B" stroke="#7B7B7B" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="35.417,12.16 32.797,9.03 31.917,10.07 35.417,14.25 42.917,5.29 42.037,4.25 "></polygon></svg>
            <div class="alert-footer-text">
                <p>secure</p>安全加密
            </div>
        </div>
    </div>
</div>
<script type="text/javascript">
function alertSet(e) {
    
    document.getElementById("js-alert-box").style.display = "block", document.getElementById("js-alert-head").innerHTML = e;
    var t = 3,
        n = document.getElementById("js-sec-circle");
    document.getElementById("js-sec-text").innerHTML = t, setInterval(function() {
        //禁止其他网站调用此跳转
        //var MyHOST = new RegExp("<?php echo $_SERVER['HTTP_HOST']; ?>");
        //if (!MyHOST.test(document.referrer)) {
        //     location.href="#34; + MyHOST;
        //}
        if (0 == t) location.href = "<?php%20echo%20$url;?>";
        else {
            t -= 1, document.getElementById("js-sec-text").innerHTML = t;
            var e = Math.round(t / 5 * 735);
            n.style.strokeDashoffset = e - 735
        }
    }, 970)
} </script>
<script>alertSet("<?php echo $title;?>");</script>
</body>
</html>  

4、在functions.php里加下面的代码:(注部分主题可能不是这个请自己区别)

 /*自动给文章的外部链接添加nofollow属性开始*/ 
add_filter('the_content','link_jump',999);

function link_jump($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) && !preg_match('/(ed2k|thunder|Flashget|flashget|qqdl):\/\//i',$val)){

         $content=str_replace("href=\"$val\"", "href=\"".home_url()."/go/?".base64_encode($val)."\" rel=\"nofollow\"",$content);

}

}

}

return $content;

}
// 自动给文章的外部链接添加nofollow属性结束
/*WordPress外链自动新窗口打开并添加nofollow属性*/add_filter( 'the_content', 'cn_nf_url_parse');
function cn_nf_url_parse( $content ) {
    $regexp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>";
    if(preg_match_all("/$regexp/siU", $content, $matches, PREG_SET_ORDER)) {
        if( !empty($matches) ) {
            $srcUrl = get_option('siteurl');
            for ($i=0; $i < count($matches); $i++)
            {
                $tag = $matches[$i][0];
                $tag2 = $matches[$i][0];
                $url = $matches[$i][0];
                $noFollow = '';
                $pattern = '/target\s*=\s*"\s*_blank\s*"/';
                preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);
                if( count($match) < 1 )
                    $noFollow .= ' target="_blank" ';
                $pattern = '/rel\s*=\s*"\s*[n|d]ofollow\s*"/';
                preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);
                if( count($match) < 1 ) $noFollow .= ' rel="nofollow" '; $pos = strpos($url,$srcUrl); if ($pos === false) { $tag = rtrim ($tag,'>');
                    $tag .= $noFollow.'>';
                    $content = str_replace($tag2,$tag,$content);
                }
            }
        }
    }
    $content = str_replace(']]>', ']]>', $content);
    return $content;
}  

OK 去看看效果吧,引用格式是:XXX/go/?你要跳转的地址

文章里出现外链是自动转换的。XXX代表你的网址地址!

文章来源:智云一二三科技

文章标题:WordPress防红系统跳转页面和引导跳转页面go源码美化

文章地址:https://www.zhihuclub.com/154272.shtml

关于作者: 智云科技

热门文章

网站地图