WordPress-Plugin: jQuery AJAX Comments

30 01 2007

Ich habe end­lich mal die Zeit gefun­den, die belieb­ten AJAX–Kom­men­tare auf mei­ner Seite von moo.fx und pro­to­type auf jQuery umzu­stel­len. Da alles was ich bis­her an AJAX–Kom­men­ta­ren für Word­Press gefun­den habe, auf den Ele­fan­ten–Frame­Works pro­to­type und script​.aculo​.us beruht, habe ich das Ganze mal als Plu­gin für Word­Press verpackt:

WordPress-​Plugin: jQuery AJAX Com­ments
Down­load: jquery-ajax-comments.zip (13kB)
English instal­la­tion instruc­tions are inclu­ded in the package. Works with Word­Press 2.1 and should work with pre­vious ver­si­ons of this web­log system.

Das Plu­gin akti­viert soge­nannte AJAX–Kom­men­tare, d.h. Kom­men­tare wer­den direkt nach dem Pos­ten ange­zeigt ohne daß die gesamte Web­seite neu gela­den wer­den muß. Die Anzeige der neu hin­zu­ge­füg­ten Kom­men­tare erfolgt dabei mit einem sanf­ten Fade-​In Effekt.

Note 2008-​04-​28 /​/​Plu­gin will be updated wit­hin the next days (or weeks ;-). Just fiddling around with a new theme…).

Update 2007-​02-​09 /​/​Now makes use of jQue­rys nocon­flict–set­ting, should work with prototype.js now.

Vor­teile

Das Plu­gin bie­tet gegen­über den bis­he­ri­gen Lösun­gen den gro­ßen Vor­teil, daß es auf dem klei­nen und schnel­len jQuery beruht, wel­ches gerade erst in der noch schnel­le­ren und ver­bes­ser­ten Vari­ante 1.1 erschie­nen ist. Ver­glei­chen wir mal die rei­nen FrameWork-​Dateien von der Größe her (jeweils unkom­pri­miert): jQuery = 55kB, prototype/script.aculo.us = 200kB. Das ist schon mal ein enor­mer Unter­schied und selbst in Zei­ten wo DSL mitt­ler­weile als gege­ben vor­aus­ge­setzt wird, sollte man 150kB ein­spa­ren wenn man kann. Sur­fer haben es bekann­ter­ma­ßen eilig.

Unab­hän­gig davon, ist die Syn­tax von jQuery wesent­lich ele­gan­ter als die von ver­gleich­ba­ren JavaScript-​Bibliotheken und das Plu­gin ist natür­lich eine gute Ergän­zung, wenn man ohne­hin schon jQuery auf sei­nen Sei­ten verwendet.

Instal­la­tion

ZIP down­loa­den, ent­pa­cken und den Ord­ner jquery-​ajax-​comments ins Plugin-​Verzeichnis kopie­ren. Im Admin-​Bereich unter Plugins akti­vie­ren… fertig.

Hin­weise

Ich habe ver­sucht, daß Plu­gin so all­ge­mein funk­tio­na­bel wie mög­lich zu hal­ten, was in die­sem Fall nicht so ein­fach ist, da von gewis­sen Annah­men bezüg­lich des ver­wen­de­ten The­mes aus­ge­gan­gen wer­den muß. Not­wen­dig für das Funk­tio­nie­ren der AJAX–Kom­men­tare ist eine Liste in der die Kom­men­tare ange­zeigt wer­den (OL oder UL), das sollte bei nahezu alle WordPress-​Themes der Fall sein. Diese Liste muß über die CSS–Klasse .com­ment­list ver­fü­gen. Schließ­lich sollte das For­mu­lar zur Ein­gabe von Kom­men­ta­ren die ID #com­ment­form besit­zen. Also in der Art:

<ol class="commentlist"></ol>

und

<form id="commentform"></form>

Auch dies ist z.B. im Default-​Theme von Word­Press gege­ben und sollte m.E. in den meis­ten gän­gi­gen The­mes vor­han­den sein. Wenn nicht, las­sen sich die betref­fen­den Theme-​Dateien schnell anpassen.

Feed­back

Man kann in einer loka­len XAMP–Instal­la­tion und trotz Tests in ver­schie­de­nen Brow­sern nicht alles vor­her­se­hen. Inso­fern sind Hin­weise auf Feh­ler und Ver­bes­se­rungs­vor­schläge jeder­zeit willkommen.