SmartyでURLに自動的にリンクを貼るプラグイン

By nakayama - 09/07/24 - このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをdel.icio.usに追加このエントリをFC2ブックマークに追加

フォームから投稿されたURLに自動的にリンクを貼りたいケースがあります。

今回はSmartyでURLらしき文字列に自動的にリンクを貼るプラグインを公開されている方がおりますので紹介します。

バシャログ。 – 『Smarty研究(4) URL らしき文字列に自動でリンクをはる修飾子

プラグインソース

function smarty_modifier_auto_link($string, $type = 'url', $text = 'URL')
{
    // URL形式のチェック用文字列(正規表現)
    $regstr = "https?://[a-zA-Z0-9.-]{2,}(:[0-9]+)?(/[_.!~*a-zA-Z0-9;/?:@&=+$,%#-]+)?/?";
    switch ($type) {
        case 'url':
            return ereg_replace($regstr,"\\0", $string);
            break;
        case 'text':
            return ereg_replace($regstr,"[ {$text} ]", $string);
            break;
        default:
            return $string;
    }
}

テンプレート側記述

{$string|auto_link}

Posted in Smarty • Tags: , , Top Of Page