Typecho 非插件实现外链转内链

No Reply , Posted in 代码 on October 20, 2015

非插件实现Typecho博客隐藏推广链接的方法:把外部链接转换为 your_blog_path/go/key/
使用typecho博客程序做推介赚取佣金的网站,如果直接帖上推广链接,很容易就被部分“聪明”的网友去掉尾巴,那么自己就无法得到自己推介得到的佣金回扣了。所以隐藏推广链接对于typecho推介博客就很有必要的,通常博主会选择插件实现,其实也可以直接自定义404页面来实现。

1、在当前typecho主题目录下创建一个url.php文件,并输入以下代码:

<?php 
return array(
//此处以下为内链“链接地址”=>“外链地址”,依次添加自定义的转向。
    'key'    => 'your url here',
    '160'    => 'http://t.160.me',
    'typecho'    => 'http://typecho.org',
    'google'    => 'http://google.com',
);
?>
<p>注:就是建立一个返回数组的php文件,通过array[key]来实现读取url,以达到目的。</p>

2、再创建一个404.php文件(如果当前主题已有这个文件,则无需再创建),在文件的顶部输入以下代码:

$tempStr = str_replace("/index.php","",$_SERVER['REQUEST_URI']);
    $action = substr($tempStr,1,2 );
    if( $action == "go" ){
        $urlArr = include_once 'tpl_url.php';
        $query = trim(substr($tempStr,4),"/");
        foreach($urlArr as $key=>$value){$arr[]=$key;}
        if(in_array($query,$arr)){
            header("Location: ".$urlArr[$query]);
        }
    }

3、保存文件即可。之后如果访问http://域名/go/160就会跳转到http://t.160.me,同理访问http://域名/go/typecho就会访问到http://typecho.org

<p>注:在后台“控制台”-》“网站外观”-》“编辑当前外观” 中,找到url.php,在里面修改添加自己要生成的外链转向。</p>

PS:该方法实用,但是比较麻烦,每次增加不同的外链就会修改一次文件。

如果闲麻烦可以用插件实现,插件下载地址:GoLinks

以上代码转自:Mr.Asong

标签: 外链