Das Theme von WordPress mitverwenden

Es ist eine völlig berechtigte und aus Nutzersicht logische Anforderung, dass es möglich sein sollte, das WordPress-Theme für ein integriertes bbPress mitzuverwenden. Folglich kommt ein solcher Wunsch auch immer wieder auf.

Im Moment ist es leider standardmäßig erforderlich, ein eigenes Design für bbPress zu erstellen. Da bbPress und WordPress viele Gemeinsamkeiten haben, ist das nicht besonders schwierig, aber „es saugt“ dennoch. Bei zukünftigen Design-Anpassungen sind zwei Designs zu bearbeiten, und das verdoppelt den Arbeits- und Testaufwand. Das ist keine erfreuliche Lösung, und von daher sollte ein besserer Weg möglich sein. (Ich selbst werde jedoch bei dieser Vorgehensweise bleiben, weil sie eben recht einfach ist.)

Wer keine Probleme damit, ein Plugin in einem sehr frühen Entwicklungsstadium zu verwenden, wird sich vielleicht über diese Ankündigung des Users ryanheller im offiziellen (englischsprachigen) Support-Forum von bbPress freuen, die ich hier schnell sinngemäß wiedergebe:

Ein Hallo an alle,

Ich habe ein WordPress-Plugin programmiert, das eine einfache Integration ihres WordPress-Themes, ihrer Widgets und vieler Plugins in ihr bbPress-Theme ermöglicht. Es handelt sich um eine Alpha-Veröffentlichung, und deshalb ist es wahrscheinlich noch fehlerhaft. Bitte geben sie ihre Fehlerberichte als Kommentare im folgenden Blogbeitrag:

http://pixopoint.com/theme-integrator-alpha-launch/

Dieses System setzt nicht voraus, dass sie eine „deep integration“ ihres bbPress vornehmen, und es führt daher auch nicht zu den damit verbundenen Nachteilen für die Performance. Es kopiert einfach ihr HTML-Markup, nachdem sie eine Reihe von Dingen in jedem Theme konfiguriert haben. Wenn sie nicht wissen, wie sie eine perfekte Integration ihres Themes in der altmodischen Weise durchführen (indem sie HTML und CSS zwischen den beiden Systemen kopieren), dann wird dieses neue System ihnen nicht helfen können, denn sie müssen es auch in solcher Weise einrichten. Allerdings: Nachdem es einmal aufgesetzt wurde, werden die Änderungen in ihrem WordPress-Theme automagisch in ihre bbPress-Forensite übernommen, zusammen mit Änderungen in den Plugins, Widgets etc.

Ich werde keinen kostenlosen Support dafür betreiben. Diese Form der Integration ist sehr zeitaufwändig und ich kann die Zeit nicht entbehren, um ihnen allen bei der Integration ihrer Themes zu helfen – das tut mir leid. Aber ich werde versuchen, die gemeldeten Fehler so schnell wie möglich zu bearbeiten.

Das System arbeitet mit einer Vielzahl unterschiedlicher Software zusammen, nicht nur mit bbPress. Sie können mein Support-Forum als eine Demonstration anschauen, hierbei verwende ich SMF.
http://pixopoint.com/forum/index.php?topic=1385.0

Sorry für meine schnelle und auch etwas schlampige Übersetzung, aber ich glaube, dass diese Information für viele Anwender interessant ist. Nähere Informationen zu dieser Lösung gibt es auf den verlinkten Seiten – leider zurzeit nur in Englisch.

In den nächsten Tagen werde ich mir das einmal näher anschauen, es kann aber noch ein wenig dauern.

Vorläufiges zur Zukunft von bbPress

Die geplante Zukunft von bbPress wird zurzeit unter einer sich formierenden Entwicklergruppe unter der Leitung von Matt Mullenweg diskutiert. Diese Diskussion befindet sich in einem recht frühen Stadium, und der Einblick in die Zukunft von bbPress ist sehr vorläufig. Dennoch lassen sich bereits gewisse Trends absehen, und diese sind in meinen Augen nicht nur erfreulich.

Zunächst die gute Nachricht: Es gibt eine Weiterentwicklung. Wer bbPress bereits in einem Projekt einsetzt, wird darüber froh sein – insbesondere, wenn es sich um den Einsatz eines in WordPress integrierten bbPress handelt.

Die Entwickler haben sehr wohl wahrgenommen, dass gefühlte zwei Drittel der Probleme, die im englischsprachigen Support-Forum behandelt werden, im Zusammenhang mit der WordPress-Integration stehen. Dieser Vorgang ist eben doch etwas komplexer, und viele Anwender scheinen mit den dabei immer wieder einmal auftretenden Problemen überfordert zu sein. Ferner ist die Möglichkeit einer derartigen Integration für viele Menschen der wichtigste Grund, ein bbPress einzusetzen, die anderen Eigenschaften von bbPress – insbesondere der sinnvolle und durchschaubare Minimalismus des Kernsystemes – sind dabei eher nachrangig oder gar völlig unerwünscht.

Die mittelfristige Planung für bbPress sieht so aus, dass aus der zurzeit noch eigenständigen Anwendung bbPress ein Plugin für WordPress werden soll. Das dauerhafte Support-Problem der WordPress-Integration könnte auf diese Weise an der Wurzel angegangen werden. Es ist dann auch nicht mehr erforderlich, mehrere Geheimschlüssel in der Konfiguration der beiden Anwendungen identisch zu setzen, da ein solches als Plugin laufendes bbPress Zugriff auf die WordPress-Konfiguation hätte. Der häufige Anwendungfall „WordPress mit integrierter bbPress-Forensite“ verlöre auf diese Weise vieles von seiner gegenwärtigen Komplexität, und vielleicht ließe sich sogar in gewissem Maße eine Verwendung von WordPress-Themes für ein integriertes bbPress-Forensystem ermöglichen. Auch das berüchtigte Thema der tiefen bbPress-Integration verlöre seinen gesamten Schrecken, da sämtliche Funktionen von WordPress innerhalb des Forums zur Verfügung stünden.

Eine solche Entwicklung käme sicherlich vielen heutigen Forenbetreibern entgegen.

Allerdings kommt sie, wenn sie auf die naheliegendste Weise stattfindet, auch mit einigen Nachteilen daher, die recht groß sind. Als „Bedenkenträger“ möchte ich diese Nachteile kurz andeuten, denn ich halte sie für wichtig und im Moment für zu wenig beachtet.

Es ist zurzeit noch möglich (und sogar als Regelfall vorgesehen), bbPress ohne WordPress für den Betrieb einer Forensite einzusetzen. Einer der großen Vorzüge von bbPress ist sein sparsamer Umgang mit den Ressourcen des Serverrechners bei einer gleichzeitigen großen Flexibilität in der Gestaltung und in den Einsatzmöglichkeiten. Dieser Vorzug macht sich aus Nutzersicht darin bemerkbar, dass es sich um ein schnelles Forum handelt. Das schlanke Kernsystem von bbPress ist für viele denkbare Anwendungen einer Forensoftware völlig ausreichend, es lässt sich gegebenenfalls durch Plugins erweitern. (Dass zurzeit viele für die älteren bbPress-Versionen entwickelten Plugins nicht mit der aktuellen Version lauffähig sind und dass mit _ck_ eine wichtige Plugin-Entwicklerin ausgestiegen ist, ist allerdings ein großes Problem. Es ist wohl nur selten der Fall, dass die ältere Version einer Software mehr Funktionalität zur Verfügung stellt als die aktuelle Version.)

Dieser Schlankheit des heutigen bbPress steht der beachtliche Verbrauch von Ressourcen auf dem Serverrechner beim Einsatz von WordPress gegenüber. Die aktuelle WordPress-Version lässt sich bei einigen Hostern gar nicht mehr einsetzen. Wenn ein mit einigem Inhalt gefülltes WordPress eine seiner Ansichten des Blogs ausliefert, hat der damit verbundene Serverprozess einen Speicherbedarf, der jenseits von Gut und Böse liegt, und er verursacht auch eine erhebliche Last auf dem MySQL-Datenbankserver. (Selbst ein voll aufgeblähtes, universelles CMS wie Joomla geht sparsamer mit den Ressourcen des Serverrechners um als das gegenwärtige WordPress.)

Ich will dies mit einem kleinen Beispiel illustrieren. Auf diesem Server läuft ein kleines Blog mit dem vielsagenden Namen Blah für kurze Mitteilungen mit meist relativ wenig Substanz – ich nenne es manchmal auch „mein persönliches Twitter“ – das vor allem eine „Linkschleuder“ auf schräge, politische, verschwörungstheoretische und oft auch lustige Seiten im Internet ist. Dieses Blog habe ich selbst niemals richtig ernst genommen. Ich habe es begonnen, um meine anderen Projekte von diesen kurzen Mitteilungen zu entlasten, und ich habe es vom ersten Tag an dafür vorgesehen, dass dort auch einige meiner Leser (auch solche, die gar nicht meiner Meinung sind) einen Account zum Posten erhalten können. Das gesamte Design ist für das „schnelle Wegbloggen“ beliebiger Themen geschrieben, und zur weiteren Auszeichnung der kurzen Beiträge wird exzessiv das Schlagwort-System von WordPress verwendet. Die Navigation ist bewusst etwas eigenwillig, insbesondere mache ich ausgiebig von der Möglichkeit Gebrauch, Ansichten und Feeds für Tags und Autoren bereitzustellen.

Es ist ein sichtbar „kleines“ Blog. Dieses „kleine“ Blog enthält zurzeit über viertausend meist kurze Beiträge, die teilweise erheblich kommentiert werden. Das sind nicht viele Beitäge. Interessanterweise hat dieses kleine, von mir niemals ernst genommene Blog mit dem wenig ernst klingenden Namen „Blah“ doch eine gewisse Aufmerksamkeit erhalten, und es empfängt zurzeit pro Tag durchschnittlich um die zweitausend Besucher, die im Schnitt jeder neun Ansichten (Tag-Seiten, Kommentarthreads etc.) vom Server abrufen. Das sind nicht viele Leser. Aber dennoch: In seiner Grundkonfiguration ist WordPress nicht dazu imstande, diese Last (die natürlich zu bestimmten Zeiten verstärkt auftritt) zu bewältigen, es benötigt dann bis zu fünfzig Sekunden, um eine Blogseite zu erzeugen. In der Folge sammeln sich die Prozesse des Webservers an, belegen megabyteweise Speicher und erzeugen dabei weitere Last auf dem MySQL-Server. Der virtuelle Speicher des Serverrechners reicht in Folge dieser angehäuften Prozesse nicht mehr aus und viele Besucher sind entweder mit überlangen Wartezeiten konfrontiert, oder sehen eine wenig erfreuliche Fehlermeldung des Webservers oder sogar gleich eine weiße Seite, weil der Ressourcenmangel sogar die Darstellung einer Fehlermeldung verhindert. Das ist kein tragbarer Zustand.

Im Falle eines Blogs lässt sich zum Glück Abhilfe schaffen, auch wenn diese nur eine Symptomtherapie ist und das Problem des unmäßigen Ressourcenhungers und der damit verbundenen miesen Skalierbarkeit von WordPress nicht behebt. Diese Abhilfe ist Caching. Nachdem ich über Monate hinweg sehen musste, dass WordPress immer weniger dazu geeignet ist, ein Blog zu betreien, das auch Leser hat, habe ich mich zur Installation des WordPress-Plugins WP Super Cache entschlossen, und seitdem ist das Blah-Blog wieder benutzbar und bremst nicht mehr den gesamten Serverrechner aus.

Diese Abhilfe durch Caching steht bei den ungleich dyamischeren Ansichten eines viel benutzten Forums nicht zur Verfügung. Während sich in einem Blog nur relativ selten etwas an den dargestellten Inhalten ändert, ist dies in einem Forum durch jede Antwort eines Forennutzers der Fall – und genau von dieser Interaktivität lebt ein Forum. Sollte bbPress nur noch zusammen mit einem ressourcenhungrigen WordPress laufen, denn werden die Anforderungen an den verwendeten Serverrechner gewaltig und damit für den Forenbetreiber teuer. Wenn die zusätzliche Blogfunktionalität eines solchen Systemes gar nicht gewünscht ist, wenn jemand „einfach nur ein Forum“ haben möchte, denn ist aus dem einst so schlanken, schnellen und eleganten bbPress ein Monster entstanden, das es in seinen Anforderungen locker mit großer BB-Software aufnehmen kann, ohne dass dies auch mit der Funktionsvielfalt dieser Software verbunden wäre. Ein großer Vorteil der jetzt vorliegenden Software bbPress wäre ohne Not aufgegeben worden, um einem einzigen (zugegebenermaßen oft wichtigen) Anwendungsfall zu begegnen.

Und das wäre in meinen Augen eine schlechte Entwicklung.

Vor einigen Wochen habe ich im englischsprachigen Support-Forum, dass gerade sehr von den WordPress-Entwicklern und -Fans geprägt ist, in einem langen, mit viel statistischen Angaben aus dem Betrieb dieses Serverrechners gewürzten Beitrag auf dieses Problem hingewiesen. Dieser recht sachlich formulierte Post ist zunächst nicht sichtbar geworden, und er wurde auch in den folgenden Tagen nicht von einem Moderator freigeschaltet, obwohl es zu erheblichen administrativen Tätigkeiten in diesem Thema kam. Nachdem ich das über mehrere Tage hinweg verfolgte, habe ich etwas getan, was ich in einem von mir betriebenen Forum hassen würde, wenn es ein Benutzer täte: Ich habe mir mit einer Wegwerf-Mailadresse einen Zweitaccount angelegt und habe auf die Zensur hingewiesen, um mich mit einem deutlich weniger sachlichen Abschiedswort aus dem offiziellen englischsprachigen Support-Forum zu verabschieden, und zwar für immer.

Der Stil der „Kommunikation“, der gerade in der bbPress-Entwicklung einzieht, erinnert mich überdeutlich an die Zustände bei der WordPress-Entwicklung. Ein kleiner Haufen von (oft recht ambitionierten) Entwicklern strebt so etwas wie die – Achtung! Ätzende Ironie! – Weltherrschaft durch allmächtige PHP-Skripten an und zeigt dabei eine beachtliche Gleichgültigkeit gegenüber den Wünschen und Anforderungen der Benutzer, die schlicht im Streben nach technischen Selbstzwecken für unbeachtlich erklärt werden. Wo dieser Weg im Falle von WordPress hingeführt hat, kann jeder Blogger sehen, der ein WordPress im Einsatz hat: Ein erheblicher Teil oft völlig unerwünschter Funktionalität ist in den Kern von WordPress geraten, das Kernsysten ist dabei ressourcenhungrig und schwerfällig geworden und die implementierten Funktionen sind alles in allem wenig brauchbar. (Zum Beispiel wurde WordPress 2.9 um eine Bildbearbeitung erweitert, als ob es dafür keine guten Desktop-Programme gäbe. Und der häufigste Anwendungsfall beim Aufbereiten eines Fotos für die Veröffentlichung im Internet, die Rotation des Bildes um 90 Grad, ist mit dieser Bildbearbeitung nicht möglich.) Schon bei der einfachen Sache, die das Bloggen in seinem Kern nun einmal ist, beim Verfassen eines neuen Posts, ist der WordPress-Anwender mit einer einschüchternden Fülle von Einstellmöglichkeiten konfrontiert, die einen weniger geübten Nutzer nicht gerade motiviert, und diese Funktionsfülle kommt mit einer Schwerfälligkeit daher, die es zur Qual macht, WordPress mit einem nicht mehr ganz aktuellen Computer oder einem schmalbandigen Internetzugang zu verwenden. Wenn dieser Stil demnächst prägend für die Fortentwicklung von bbPress werden sollte, wird bbPress in meinen Augen unbrauchbar, und ich glaube nicht, dass es nur mir so geht. Der mir aus dem WordPress-Umfeld allzu vertraute und tief verhasste Stil der „Kommunikation“ ist bei bbPress bereits eingezogen, einschließlich der abgehobenen Selbstgefälligkeit der auftretenden Entwickler.

Sollte die weitere Entwicklung von bbPress so verlaufen, wie es sich zurzeit leider abzeichnet, werde ich mein Engagement beenden. Es wird hier in diesem Falle auch keine aktuelleren Sprachdateien für kommende bbPress-Versionen mehr geben. Zurzeit hoffe ich noch, dass es nicht so schlimm kommt, wie es sich abzeichnet, aber diese Hoffnung ist mehr von meinen Wünschen als von beobachtbaren Tatsachen getragen und wird beinahe täglich kleiner.