Seite 1 von 1

Suche Snippet zum Kürzen von Replacement BBCode [url]

Verfasst: 23.08.2005 17:48
von das_andi
Hi,

und zwar folgendes:

Wenn ein User ein Link mittels dem BBCode url setzt und dieser Link eine bestimmte Zeichenanzahl überschreitet, soll dieser gekürzt werden und "..." angehängt werden.

Ist recht nützlich da es sonst bei fixen Forenbreiten zum Layoutdisaster kommt.

Könnte mir da jemand eventuell helfen ?

Verfasst: 24.08.2005 12:58
von Harki
Es ist nicht ganz genau das was Du suchst, aber ich habe bei mir zu diesem Zweck eine modifizierte Form des "50 Zeichen in der Nachricht"-MODs laufen.

Und dann in includes/functions_post.php das hier

Code: Alles auswählen

	// 90 Zeichen in der Nachricht
	//
	if (preg_match("/([^[:blank:]]{90})/", $message))
	{
		$message_array = preg_split("/\n/", $message);
		for ($x = 0; $x < count($message_array); $x++)
		{
			if (!preg_match("/\[(url\=|URL\=|img|IMG).*\//", $message_array[$x]))
			{
				$message_array[$x] = preg_replace("/([^[:blank:]]{90})/", "\\1 ", $message_array[$x]);
			}
			$message = implode("\n", $message_array);
		}
	}
Dadurch werden alle zusammenhängenden Zeichenketten, die länger als 90 Zeichen sind - auch solche in BBCode, die keine Verlinkung mit Namen ([url = ...]Name[ /url ]) und keine Bilder ([ img ] ... [ /img] sind -, zersäbelt.

Das ist ein bißchen arg didaktisch gegenüber den Usern :roll: und das, was Du suchst wäre sicher besser und freundlicher, aber es verhindert zumindest die von Dir erwähnten Layout-Desaster.