Richard: Smilies mit BBCode von Chrisitian Seiler?

Beitrag lesen

Hallo Sören,

diese Parserfunktion habe ich nciht ganz verstanden...
Was sind Inhaltstypen? also block bzw Inline?

Inhaltstypen können Codes bei deren Erzeugung zugewiesen werden. Z.B. block und inline, aber auch andere, die du selbst definieren kannst. Der Funktion addParser() kannst du nun über den Parameter $type eine Zeichenkette oder ein Array von Inhaltstypen mitgeben, innerhalb derer die Parserfunktion ausgeführt werden soll.

es heißt als $type kann man auch eine Zeichenkette verwenden... des Weiteren wird eine funktion aufgerufen

müsste das dann so aussehen?

function change_smile_in_pic () {
echo '<img src="images/smilies/smile.gif">';
}

Nein, die Funktion muss sich selbst um das _Ersetzen_ der Smilies kümmern, also diese zunächst mit entsprechenden Funktionen suchen und ggf. durch einen <img>-Tag ersetzen.

$bbcode->addParser (':)' 'change_smile_in_pic()')

Nicht mit addCode verwechseln! Der erste Parameter ist der Inhaltstyp, und der heißt bestimmt nicht ':)'.

Wenn du einen Code per

$bbcode->addCode( 'b', 'simple_replace', null, array('start_tag' => '<b>', 'end_tag' => '</b>'), 'inline', array('block', 'inline'), array() )

hinzugefügt hast, ist dessen Inhaltstyp 'inline'. Für diesen Inhaltstyp möchtest du nun eine Parserfunktion hinzufügen, z.b. mit

$bbcode->addParser( array('inline', 'block'), 'replaceSmilies' )

Funktionsname dabei ohne Klammern!

Beste Grüße
Richard

--
~§%+