Der Start der Nummerierung kann vorgegeben werden.
Dazu nach [ code ] noch ein [ s=X ] anhängen, wobei X die erste Zeilennummer ist.

- Code: Alles auswählen
#
#-----[ OPEN ]------------------------------------------
#
includes/bbcode.php
#
#-----[ FIND ]------------------------------------------
#
$str_to_match = "[code:1:$uid]" . $before_replace . "[/code:1:$uid]";
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$temp_text = str_replace('[', '[', $after_replace);
$temp_text = str_replace(']', ']', $temp_text);
if (!preg_match("/\[s=([0-9]+)\]/", $temp_text))
{
$line_number = 1;
}
else
{
$line_number = substr($temp_text, 3, strpos($temp_text, "]") - 3);
$after_replace = str_replace('[s='.$line_number.']', '', $temp_text);
}
$lines = preg_split("/\n/", $after_replace);
$after_replace = '<ol start="'.$line_number.'" nowrap="nowrap">';
for ($j = 0; $j < sizeof($lines); $j++)
{
$lines[$j] = preg_replace("/\n/", "", $lines[$j]);
$after_replace .= '<li>'.$lines[$j].' </li>';
}
$after_replace .= '</ol>';
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Dieses Snippet ist hier nur bei CODE vorgesehen, liese sich aber auch für BBCode PHP / C oder andere Sprachen einsetzen.
Dazu wird der Post-Text selber nicht verändert, nur die Anzeige!
ERGÄNZUNG
Auf dem ezPortal werden diese Code-Blöcke mit zusätzlichen Leerzeilen dargestellt. Hierzu in der Datei fetchposts.php die Zeile
- Code: Alles auswählen
$posts[$i]['post_text'] = nl2br($posts[$i]['post_text']);
gegen
- Code: Alles auswählen
$posts[$i]['post_text'] = str_replace("\n", "<br />", $posts[$i]['post_text']);
austauschen, damit es auch dort stimmt.
Die gleiche Änderung gild auch für das IM Portal! Wo dadurch die Funktionalität des, evtl. eingebauten, "Select Expand BBcodes MOD" wieder hergestellt wird, welcher, hier auf AmigaLink.de, dafür verantwortlich ist das auch im Forum eine zusätzliche Leerzeile erscheint.
Author des Snippets: OXPUS
Quelle: oxpus.de