ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Code Hack Requests / zu lange url kürzen


Seite 1 von 1

gfc schrieb am 01.07.2003 um 20:52 Uhr

also.. ist glaub ich nix so wildes, fänd ich aber seeehr toll um scrollorgien zu vermeiden:

also, viele leute posten links von google etc die sind oft seeehr lang, sprich weit mehr als ein Bildschirm --> horizontales Scrollen

nun wärs toll, wenn man das parsen könnte, dass wenn ein link >= x Zeiche (x einstellbar, am besten im AdminCP) dann sollte er folgendes erstellen machen:

http://urldess..links.html

kann das wer verwirklichen? sollte nur ne if abfrage sein, aber wie gesagt: ich php noob

master_mario schrieb am 01.07.2003 um 22:20 Uhr

$max_len = 50(?)

if( strlen( $url ) > $max_len )
    $url = substr ( $url, 0, $max_len ).'...';

Ganz leicht :D

Kanst Du natürlich auch so zerlegen wie Du willst.

$oldurl = $url;
    $url = substr ( $url, 0, 20 ).'...'.substr ( $url, 50 );    <=( ohne zweiten Parameter gibt substr den String bis zum Ende wieder )

gfc schrieb am 01.07.2003 um 23:13 Uhr

nene.. du verstehst mich ned ganz recht.. ich will ja, dass der Link an sich erhalten bleibt, nur die Ansicht halt ne verkürzung zeigt..

master_mario schrieb am 02.07.2003 um 01:18 Uhr

Ja und? Die richtige URL darfst Du natürlich nicht verändern. Die URL überträgst Du auf eine andere Variable und die veränderst Du dann und die wird dann für den Namen benutzt.

Wenn das Standart im Boardcode werden soll, dann mußt Du diese Änderung in der thwbcode.inc.php vornehmen.

Aber frag nich wie du das in die regulären Ausdrücke rein bekommst. Dafür brauch man wirklich nen Experten.

theDon schrieb am 02.07.2003 um 17:43 Uhr

vor get_thwb_tags() einfügen:

function short_link($prepend, $url, $url_http_prefix = 1)
{
  $url_len = strlen($url);
  
  return '['.'noparse]'.$prepend.'<a href="'.(($url_http_prefix) ? "" : "http://www.").$url.'" target="_blank">www.'.substr($url, 0, 20)."[...]".substr($url, $url_len - 10, $url_len)."</a>["."/noparse]";
}

und in get_thwb_tags()
die regexes so ändern:

// http://www.thwboard.de
    $a_thwbcode[SEARCH][] = "/(^|[ \n])([a-zA-Z0-9.\-+]+):\/\/([^ \"\n]+)/e";
    $a_thwbcode[REPLACE][] = 'short_link("\1", "\2://\3")';
    // www.thwboard.de
    $a_thwbcode[SEARCH][] = "/(^|[ \n])www\.([^ \"\n]+)/ie";
    $a_thwbcode[REPLACE][] = 'short_link("\1",  "\2", 0)';

MrNase schrieb am 02.07.2003 um 20:28 Uhr

Das produziert: http://www.web.de/df...e.txt ? Und wenn man draufklickt kommt man dann auf http://www.web.de/dfderedserzulanghe.txt ????

c00l :) 2.29 feature :)

theDon schrieb am 02.07.2003 um 22:05 Uhr

exakt.

gfc schrieb am 03.07.2003 um 18:13 Uhr

koole ideen hab ich ab und an gell :)

gfc schrieb am 03.07.2003 um 22:56 Uhr

ohh.. deine Version klappte ned ganz.. hab sie leicht umgeschrieben und ins HackForum getan..

http://hacks.slware.com/tboard/showtopic.php?threadid=514&time=&pagenum=lastpage

theDon schrieb am 04.07.2003 um 21:59 Uhr

mh, bei mir gings perfekt.

gfc schrieb am 05.07.2003 um 15:22 Uhr

komisch.. bei mir ned.. das [noparse] wollt er ned schlucken und meldete php fehler..

theDon schrieb am 16.07.2003 um 15:05 Uhr

o_O, das ist ein fehler vom board hier.

gfc schrieb am 18.07.2003 um 19:05 Uhr

anyway.. ist n update draussen :D

Seite 1 von 1