die externen Links gehen alle über folgende BBCode-Angaben (standard):
Code: Alles auswählen
[url]xxxx://www.phpbb.com[/url]
[url]www.phpbb.com[/url]
[url=xxxx://www.phpbb.com]phpBB[/url]
[url=www.phpbb.com]phpBB[/url]
Code: Alles auswählen
[link=xxxx://www.phpbb.com]phpBB[/link]
nach:
Code: Alles auswählen
$bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\3', $bbcode_tpl['url4']);
Code: Alles auswählen
$bbcode_tpl['link'] = str_replace('{LINK}', '\\1', $bbcode_tpl['link']);
$bbcode_tpl['link'] = str_replace('{DESCRIPTION}', '\\2', $bbcode_tpl['link']);
Code: Alles auswählen
// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url=((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url4'];
Code: Alles auswählen
// [link=xxxx://www.phpbb.com]phpBB[/link] code..
$patterns[] = "#\[link=([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/link\]#is";
$replacements[] = $bbcode_tpl['link'];
Code: Alles auswählen
// matches an email@domain type address at the start of a line, or after a space.
// Note: Only the followed chars are valid; alphanums, "-", "_" and or ".".
$ret = preg_replace("#(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $ret);
Code: Alles auswählen
// DJ: matches an "link://yyyy" URL at the start of a line, or after a space.
// DJ: link can only be alpha characters.
// DJ: yyyy is anything up to the first space, newline, comma, double quote or <
$ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"\\2\">\\2</a>", $ret);
nach:
Code: Alles auswählen
<!-- BEGIN url --><a href="{URL}" target="_blank">{DESCRIPTION}</a><!-- END url -->
Code: Alles auswählen
<!-- BEGIN link --><a href="{LINK}">{DESCRIPTION}</a><!-- END link -->
Viele Grüße und Danke für Meinungen!
Iovialis