BuddyPress Blog

Vorschau auf BuddyPress 1.1: Das neue Theme(-Framework)

Im September soll der nächste Schritt von BuddyPress veröffentlicht werden. Mit Version 1.1 werden zahlreiche Änderungen und Neuerungen eingeführt, die wir euch in einigen Artikel vorstellen möchten. Heute geht es um das neue BuddyPress-Theme(-Framework).

Mit BuddyPress 1.1 werden die bisherigen zwei Themes “bpmembers” und “bphome” durch ein Theme ersetzt. Somit sind Anpassungen nur noch an einer Stelle notwendig. Des weiteren ermöglicht diese Änderung, dass “normale” WordPress-Themes mit einer Zeile in der style.css zu einem BuddyPress-Design umgebaut werden können.

Dank der in WordPress 2.7 eingeführten “Parent/Child”-Technik (zu dt. Eltern/Kind) können Themes auf ein Parent-Theme (Eltern-Theme) aufbauen und Änderungen können, ohne dieses an zufassen, stattfinden. WordPress läd somit nicht vorhandene Template-Dateien im Child-Theme aus dem Parent-Theme. Diese Technik macht sich BuddyPress zu nutzen.

BuddyPress 1.1 enthält ein Theme namens “bp-sn-parent” auf das nun alle anderen BuddyPress-Theme aufbauen. Somit sind nur noch CSS-Anpassungen notwendig um ein eigenes Design für die Social Network Erweiterung für WordPress zu erhalten. Alternativ kann man auch ein beliebiges WordPress-Theme ganz einfach umbauen.

Die Vorteile dieser Technik liegen klar auf der Hand, da man nicht am HTML und PHP herum werkeln muss, Änderungen zweimal machen oder sich durch einige hundert PHP-Dateien kämpfen. Natürlich besteht weiterhin die Arbeit an einem BuddyPress-Theme aus vielen CSS-Anpassungen, jedoch wird diese Arbeit durch diese Neuerung vereinfacht.

Die Transformation in einer Zeile

Um aus einem normalen WordPress-Theme ein BuddyPress-Theme zu machen, bedarf es nur einer Änderungen an der style.css. Einfach zwischen “Author URI: […]” und “Version: […]” diese Zeile “Template: bp-sn-parent” einfügen und schon werden alle von BuddyPress benötigten Dateien geladen. Das selbe gilt natürlich auch für Themes die man selber (neu)baut.

Der einfachste Weg ist wie immer Learning by Doing und Abgucken. Natürlich wird ein fertiges Theme mit BuddyPress 1.1 ausgeliefert, das diese Technik nutzt. Ein Blick in diese style.css zeigt noch eine weitere Funktion des Theme-Frameworks:

/*
Theme Name: BuddyPress Default
Theme URI: http://buddypress.org/extend/themes/
Description: The default theme for BuddyPress.
Version: 1.1-pre
Author: BuddyPress.org
Author URI: http://buddypress.org
Template: bp-sn-parent
*/

/* Font styles */
@import url( ../bp-sn-parent/_inc/css/fonts/12px.css );

/* Layout styles for home page, internal pages and blog/directory pages */
@import url( ../bp-sn-parent/_inc/css/layout/home-page/3c-right.css );
@import url( ../bp-sn-parent/_inc/css/layout/internal-pages/3c-left.css );
@import url( ../bp-sn-parent/_inc/css/layout/blog-dir-pages/2c-right.css );

/* Default theme admin bar styles */
@import url( _inc/css/adminbar.css );

/* Default theme styles */
@import url( _inc/css/screen.css );

/* Uncomment the following line and add your custom styles to '_inc/css/custom.css' */
/* @import url( _inc/css/custom.css ); */

Das Theme-Framework liefert schon fertige Layouts und CSS-Elemente mit, damit das Entwickeln eines BuddyPress-Themes noch einfacher wird.

Man kann, muss aber nicht

Weiterer Vorteil dieses neuen Theme-Frameworks: Man kann übernehmen, aber man muss nicht. Ganz genau geht es um Template-Dateien, denn manchmal kommt man doch zum Punkt, wo das fertige HTML-Konstrukt von BuddyPress nicht den eigenen Vorstellungen entspricht. Zum Beispiel, wenn man die Elemente der Profilseite anderes ordnen möchte.

Denn wie anfangs beschrieben, läd WordPress im Child-Theme nicht vorhandene Dateien aus dem Parent-Theme, dies gilt auch natürlich für die PHP-Dateien von BuddyPress. Das heißt, möchte man etwas an einem Template ändern, so kopiert man die Datei samt Ordner/-n aus dem Framework in sein Child-Theme.

Was ich persönlich am Besten an dieser Änderung finde ist, dass man nun das Theme aktualisieren kann wenn eine neue Version vor liegt ohne seine Änderungen zu verlieren, dann diese liegen bekanntlich in den Child-Themes. Dies war eine Schwäche am alten System, denn Updates mussten mühsam in beide Themes einkopiert werden.

Altes bewahren und weiter unterstützen

Dieser Artikel zeigt stolz die Neuerungen, aber was ist mit den alten BuddyPress 1.0 Themes? Die laufen natürlich auch weiter. Man muss auch nichts herum kopieren, denn nach der automatischen Aktualisierung von BuddyPress muss man nichts ändern. Dies gilt auch für zukünftige Versionen.

Jedoch sollte man beachten, dass die neue Funktionen aus BuddyPress 1.1 natürlich nicht eingebaut sind, diese gehen nur mit dem neuen Theme-Framework. Aber keine Sorge, denn man hat ja genug Zeit für einen Umstieg auf die neue “Parent/Child”-Technik, denn alte BuddyPress-Themes werden noch eine Zeitlang unterstützt.

Die Community wird es lieben

Zwar wird der Arbeitsaufwand für ein BuddyPress-Theme nicht minimiert, aber an vielen Stellen vereinfacht, so hat man nur noch eine Baustelle anstatt Zwei. Durch diese Vereinfachung wird es auch mehr freie Themes für BuddyPress geben, denn es ist nur etwas CSS notwendig, damit BuddyPress ein eigenes Design erhält.

BuddyPress 1.1 soll noch im September erscheinen, ein genaues Datum steht noch nicht fest.

Weitere Informationen

Update: Das Basistheme für BuddyPress heißt mittlerweile “bp-sn-parent”. Dies ist im Artikel nun korrigiert.


Dennis Morhardt

3 Trackbacks

  1. Beta-Version von BuddyPress 1.1 veröffentlicht - BuddyPress, Release, Beta - BuddyPress Deutschland am 14. September 2009
  2. BuddyPress 1.1 freigegeben - BuddyPress, WordPress, Final, Release - BuddyPress Deutschland am 6. Oktober 2009
  3. Buddypress downloaden und installieren | GCMedia Webdesigner Blog! am 16. Dezember 2009

9 Kommentare | Kommentar schreiben

  1. #1 Joachim

    Hallo,

    viel wichtiger ist mir, dass bbPress mit einem click installiert werden kann. Gibt es dazu etwas Neues?

    Grüße
    Joachim

  2. #2 Dennis Morhardt

    Dazu gibt es in den kommenden Tage auch einen eigenen Artikel.

  3. #3 Marten

    Hi, kann man irgendwo schon einen Blick auf das Design des
    BP 1.1 Standart-Themes werfen?

    Bin schon gespannt,
    Marten

  4. #4 Benny

    Vielen, vielen, vielen Dank! Das wird das Leben wirklich vereinfachen. Ich freu mich schon rießig aufs 1.1er Release – damit wird dann auch direkt (nach kurzer Testphase) unser Projekt gestartet :)

  5. #5 Dennis Morhardt

    Das “neue” Theme aus BuddyPress 1.1 sieht genau so aus, wie das in BuddyPress 1.0. Es fanden also nur Änderungen unter der Haube statt. Hier läuft die aktuelle Entwicklerversion als Demo: http://testbp.org/

  6. #6 Stefan

    das ist alles sehr schön…gibt es denn schon was genaueres ich meine der september ist lang ;-) wenn das ganze erst ende bzw. anfang oktober rauskommt würde sich mein projekt enorm verlängern bis es online ist..
    auch stellt sich mir die frage, wenn ich denn nun normale themes benutzen kann werde ich dann vordefinierte templates in mein theme übernehmen oder wie läuft das ganze dann?
    grüße
    stefan

  7. #7 Dennis Morhardt

    Es gibt noch keinen Termin. Das ist so üblich. Du müsst halt wie im Artikel beschrieben, nur noch die CSS-Anpassungen machen.

  8. #8 Mathias

    Auf http://testbp.org/ kann man sehen, dass einige User eigene Themes scheinbar selbst erstellt und hochgeladen haben. Nach einer Anmeldung auf testbp.org gab es keinerlei Möglichkeit dazu, das eigene Theme zu ändern. Wird das noch integriert?

    Grüße aus der Hauptstadt
    Mathias

  9. #9 Dennis Morhardt

    Nein, der Benutzer selber kann das Theme z.B. seines Benutzerprofiles nicht ändern. Er kann aber das Theme eines Blogs über das Backend, wenn vom Admin aktiviert, ändern.



Dein Kommentar »