WordPress agrega la función de salto de enlace externo

Método 1: implementación de código puro

Primero, cree un archivo go.php en el directorio raíz de su sitio web de wordpress e ingrese el siguiente código en go.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

dieciséis

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

<?php

$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='http://mybj123.com/';  

            $title='参数错误,正在返回首页...';  

        }  

    }  

else {  

    $title='参数缺失,正在返回首页...';  

    $url='https://www.mybj123.com/';  

}  

?>  

<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>

Cómo usar: después de guardar, el formulario de salto de enlace externo es: {dirección del sitio}/go.php?{dirección de enlace externo}

Uso: al agregar un enlace externo, simplemente agregue un prefijo de salto unificado al enlace externo: http://dirección del sitio web/go.php?.

Para evitar que las arañas se arrastren, todas las arañas tienen prohibido rastrear el directorio /go?url en Robots.

1

2

Disallow: /go/  

Disallow: /go?url

Método 2: implementación del complemento

Algunos complementos también pueden lograr este salto de enlace externo

1. Complemento de URL simple: fácil de configurar, solo necesita configurar el sufijo y la página de destino en segundo plano

2. Complemento Link-Hopper: la dirección base del enlace de salto se puede configurar a voluntad

3. Complemento Pretty Link Lite: la función de fondo es muy poderosa y también hay una versión Pro, pero requiere dinero. Se puede usar para hacer una URL corta , como t.cn y bit.ly.

4. Complemento de encubrimiento de enlaces de afiliados: Herramienta de conversión de enlaces de afiliados , utilizada para promocionar a sus clientes de Taobao y otros enlaces ocultos, puede usarla, con función de estadísticas.

5. Complemento WP No External Links: este puede convertir automáticamente los enlaces externos del blog en enlaces internos, como http://www.baidu#com, se mostrará como http://www.mybj123# com/goto/ http://www.baidu#com (# es .), puede intentar usar este complemento para evitar la pérdida de peso.

6. Complemento Go Codes: es tan simple como la configuración anterior del complemento de enlace de salto de enlace externo de wordpress, con función de estadísticas.

Nota: puede probarlo usted mismo ya sea que se use el complemento o no. No explicaré demasiado aquí, y no seré responsable de lo correcto o incorrecto del complemento.

Método 3: recomendación de los internautas

Crea go.php, escribe:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

dieciséis

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

<?php   

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=="zhangge" ) {  

   $t_url="//zhangge.net";  

elseif($t_url=="baidu") {  

   $t_url="https://www.baidu.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>

找到模板的functions.php文件添加:

/*文章外链跳转伪静态版 

此为新窗口打开,如不想要直接删除下面的tar _ ank(安全问题不能打出来) 

*/  

add_filter('the_content','link_jump',999);  

function link_jump($content){  

    preg_match_all('//',$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.php?".base64_encode($val)."\" rel=\"nofollow\" target='_blank' ",$content);  

            }  

        }  

    }  

    return $content;  

}

nginx伪静态设置(跳转方式为/go/):

# 外链跳转伪静态 php版本  

rewrite ^/go/(.*)$ /go.php?url=$1 last; #注意go.php的实际路径,默认为网站根目录  

以上代码增加了跳转美化效果,代码中已经用 base64 将源链接加密,并且加上了 nofollow,但恐怕蜘蛛还是能爬行,在 Robot s 禁止所有蜘蛛爬行 /go?url 目录!

1

2

Disallow: /go/  

Disallow: /go?url

Supongo que te gusta

Origin blog.csdn.net/winkexin/article/details/131150227
Recomendado
Clasificación