页面载入中..

凤凰不归巢

不懂的时间久了,就明白了;不会的多练了,就会了;看着别人会的,因为自己不会,所以才觉得他们厉害.
首页 » 编程技术 » 自动将日志内的URL转为超链接

自动将日志内的URL转为超链接

bcjs category

先告诉大家这个是WordPress原生的哦,不知道大家有没有注意到很多Spammer的评论里的网址什么的都会被WordPress自动转换成超链接,我之前为了迎合个人需求而将D&Z主题集成sem-autolink-uri这个插件的功能,但此后一直觉得不爽,因为总是有种非WordPress原装的正则表达式都是不完美的感觉,再是代码有些长.鉴于它会将评论中URL转换成超链接的功能,于是今天一早爬起来疯狂的搜索到底咋回事.后来发现\wp-includes\default-filters.php文件里一段代码如下:

/* 自动将评论内容中的URL转换为超链接 */
add_filter( 'comment_text', 'make_clickable',9);

细想后,日志内的URL转换为超链接不就很简单么?就冲着这原生的玩意,朝着主题的function.php里边添加以下两段代码.(注意:如果URL夹在文字中间,那么在它前后各敲上一个空格吧,不然它就不工作了,这个是WordPress本身的小BUG.)

/* 自动将日志中的URL转换为超链接 */
add_filter( 'the_content', 'make_clickable');
add_filter( 'the_excerpt', 'make_clickable');

测试一下我自己的博客的URL:

http://wancheng.li

http://www.wancheng.li
瞧瞧,圆满成功.另外,虽然提高了阅读者的便携性,但是打开地址后是直接在本窗口跳转,所以不得不再次于以上代码之后增加几句简单的代码,详情如下:

add_filter( 'the_content', 'add_redirect_link');
add_filter( 'the_excerpt', 'add_redirect_link');
/* 重定向+新窗口打开 */
function add_redirect_link($text = ''){
    $text=str_replace('href="', 'target=_blank href="'.get_option('home').'/?r=', $text);
    $text=str_replace("href='", "target=_blank href='".get_option('home')."/?r=", $text);
    return $text;
}
add_action('init', 'redirect_link');
function redirect_link(){
    $redirect = $_GET['r'];
    if($redirect){
        if(strpos($_SERVER['HTTP_REFERER'],get_option('home')) !== false){
            header("Location: $redirect");
            exit;
        }
        else {
            header("Location: http://wancheng.li/");
            exit;
        }
    }
}

本文有 47 条评论

  1. Hobart 说:

    哈哈搞了半天还是不行哦

  2. 皓辰 说:

    有点迷糊。

  3. 建议写点z-blog的,我会感激死你的。 :cx: 奖励下,点广告咯

  4. neeke 说:

    是否支持中文?

有事没事评论一下!?

icon_wink.gif icon_neutral.gif icon_mad.gif icon_twisted.gif icon_smile.gif icon_eek.gif icon_sad.gif icon_rolleyes.gif icon_razz.gif icon_redface.gif icon_surprised.gif icon_mrgreen.gif icon_lol.gif icon_idea.gif icon_biggrin.gif icon_evil.gif icon_cry.gif icon_cool.gif icon_arrow.gif icon_confused.gif icon_question.gif icon_exclaim.gif 



品味人生

酸、甜、苦、辣

媒体相关

网上好玩意

搞笑玩意

生活要有乐趣

杂七杂八

什么乱七八糟的

编程技术

我的专业我的梦

资源共享

好东西要分享