例えばこんな感じにすると
[[http://www.google.com:http://www.yahoo.com]]
Googleのように見せかけてYahooに飛ばせます。 先日のエイプリルフールに有効活用させていただきましたが、悪用も可能なのでできれば禁止しておいた方がよいような気がします。
[[BugTrack2/51>BugTrack2/50]]
cvs diff -u make_link.php Index: make_link.php =================================================================== RCS file: /cvsroot/pukiwiki/pukiwiki/lib/make_link.php,v retrieving revision 1.18 diff -u -r1.18 make_link.php --- make_link.php 2 Apr 2005 03:04:14 -0000 1.18 +++ make_link.php 21 Apr 2005 18:27:38 -0000 @@ -369,7 +369,12 @@ } else { $rel = ' rel="nofollow"'; } - return '<a href="' . $this->name . '"' . $rel . '>' . $this->alias . '</a>'; + $parse = parse_url($this->name); + $host = ''; + if (preg_match('/^https?/', $parse['scheme'])) { + $host = ' [' . $parse['host'] . '] '; + } + return '<a href="' . $this->name . '"' . $rel . '>' . $this->alias . '</a>' . $host; } }
- $host = ' [' . $parse['host'] . '] '; + $host = ' <span class="super_index">[' . $parse['host'] . ']</span> ';
make_link.php,v 1.35 line 349- class Link_url extends Link { (中略) line 383- function toString() { if (FALSE) { $rel = ''; } else { $rel = ' rel="nofollow"'; } - return '<a href="' . $this->name . '"' . $rel . '>' . $this->alias . '</a>'; + $parse = parse_url($this->name); + $host = ''; + if (preg_match('/^(https?|ftp|news)/', $parse['scheme'])) { + $host = ' <span class="super_index" title="' . $parse['host'] . '">[' . $parse['host'] . ']</span>'; + } + return '<a href="' . $this->name . '"' . $rel . '>' . $this->alias . '</a>' . $host; } }