"Enter" drücken, um zum Inhalt weiterzugehen

Community-Website mit Buddypress

Buddypress-Logo
Buddypress-Logo

Im Frühling diesen Jahres wurde ich um Unterstützung bei der Umsetzung eines Internet-Projekts gebeten: eine Webseite sollte entstehen „wie Facebook“, also ein soziales Netzwerk – aber für einen geschlossenen Mitgliederkreis von Leuten, die ein recht spezielles Hobby vereint (hier PKW-Tuning).

In diesem Artikel möchte ich darum exemplarisch meine Erfahrungen mit dem Aufbau und der Erstellung dieser Webseite weitergeben und so vielleicht ein wenig Entscheidungshilfe leisten. Denn vom Seitenprinzip her spielt es keine Rolle, ob ich ein solches Netzwerk für Auto-Freaks oder für einen christlichen Jugendclub oder für Feierabend-„Silversurfer“erstelle, weil die gewünschten Funktionen stets ähnlich sind: Profilseite, Freundschaftsanfragen, Statusmeldungen, Upload von Mediendateien, „Liken“ und Nicht-„Liken“, Kommentare schreiben, Chat usw. – also all das, was man eben von Facebook her so kennt.

Was solls denn nun sein: Elgg, Friendica, Buddypress?

Startseite: jeder Link leitet zum Anmeldeformular
Startseite weitgehend verrammelt: jeder Link leitet zum Anmeldeformular

 

Wenn ich mich einmal entschieden habe, mit einem solchen Projekt nicht auf vorkonfektionierte Seiten wie Facebook zu gehen, weil ich z.B. Sicherheitsbedenken habe, und auch sonst keine vorgefertigte Plattform nutzen sondern lieber selber hosten möchte, stellt sich schnell die Frage, welche Plattform dafür überhaupt in Frage kommt. Ich hatte anfangs drei Plattformen im Auge: Elgg, Friendica und WordPress mit der Erweiterung Buddypress.

Nach erstem Testen schied Elgg relativ schnell aus: die Software ist an sich von den Grundfunktionen her ganz interessant und in den letzten Jahren gereift, allerdings wartet viel Übersetzungsarbeit ins Deutsche auf den Admin in spe. Am Ende entschied ich mich dagegen, weil benötigte Zusatzfunktionen zwar prinzipiell über Addons realisierbar wären, vorhandene Addons selbst aber von z.B. Teil sehr schlechter Qualität oder benötigte (noch) gar nicht verfügbar waren.

Friendica selbst ist da deutlich weiter und auch stabiler, aber bei den von mir benötigten Features wie z.B. ein Kleinanzeigenmarkt oder Bloggingfunktionen kann auch Friendica nicht punkten. Hätte ich diese Zusätze nicht benötigt, hätte ich die Seite vermutlich mit Friendica realisiert, weil hier die Fokussierung auf das Kernfeature „Soziales Netzwerk“ stimmt.

Login-Formular
aufgehübscht: Login-Formular in den Seitenfarben

 

Für mich blieb also schnell WordPress/Buddypress übrig.
Warum?

Die durchweg modulare Struktur und Erweiterbarkeit von WordPress lässt mir größtmögliche Freiheit, das System mit Zusatzfunktionen aufzubohren. Viele WordPress-Module stellen zudem flexibel platzierbare Widgets zur Verfügung, die den Bedienkomfort und die Übersichtlichkeit erhöhen können. Und letztlich auch nicht als Faktoren zu unterschätzen: mit WordPress kenn ich mich aus, (Sicherheits-)Updates lassen sich leicht einspielen und es gibt viel Hilfe im Netz, weil das System millionenfach in Gebrauch ist.

Buddypress mit Plugins aufbohren

Buddypress (BP) kommt als ein ganz normales WordPress-Plugin, ist mit zwei Mausklicks rasch installiert und verwandelt eine WordPress-Standardinstallation in eine Community-Webseite. Es benötigt dazu lediglich ein Theme, das die BP-Zusatzfunktionen nutzen kann, davon gibt‘s im Netz eine ganze Menge – kostenlos wie kostenpflichtig. Alternativ kann man ein WordPress-Standardtheme auch selbst aufbereiten, die Buddypress-Entwickler haben dafür ein Plugin parat: das BuddyPress Template Pack.

Nach der Aktivierung eines geeigneten Templates oder Themes verfügen registrierte Seitenbenutzer über eine eigene Profilseite, können Statusmeldungen posten und Freundschaftsanfragen beantworten, Bilder hochladen, Videos verlinken, Beiträge liken oder disliken, Privatnachrichten senden, Gruppen und Foren gründen usw. Weitere Zusatzfunktionen lassen sich über eine Menge weitere Plugins realisieren, andere Möglichkeiten sind bereits mit jeder WordPress-Installation an Board, etwa dass Nutzer Blogbeiträge verfassen oder auch statische Webseiten anlegen können.

In meinem Fall benötigte ich eine Seite, die nur für Mitglieder voll sichtbar und zugänglich ist. Das erledigt für meine Zwecke das Plugin Privates BuddyPress: Besucher sehen unangemeldet nur die Startseite, auf der kurz erklärt wird, um was es geht, der Rest ist erstmal für unregistrierte Leute tabu. Welche Seiten und Features dabei für Besucher gesperrt bzw. zugänglich sind, kann man mit dem Plugin sehr fein einstellen.

persönliche Pinnwand
persönliche Pinnwand

Feintuning mit Plugins

Alle nicht frei geschalteten Interaktionen leiten zum Login-Formular bzw. fordern zur Registrierung auf der Seite auf. Um den Login-Bereich optisch an die jeweilige CI anzupassen, gibts eine Reihe funktionaler Plugins, ich habe dafür Custom Login lite verwendet.
Den Registrierungsprozess kann man ebenfalls gehörig aufpeppen und für Neubenutzer auch leichter bedienbar gestalten. Dafür habe ich das Plugin BP Xtra Signup in Gebrauch, was auch die Möglichkeit bietet, vor dem Abschluss der Registrierung z.B. die Community-Regeln anzuzeigen und durch das Setzen eines Hakens „abnicken“ zu lassen.

Registerprozess mit Fortschrittsbalken
Registerprozess mit Fortschrittsbalken, sowie Benutzername- und Passwort-Check

 

Möchte ich den Benutzern die Möglichkeit geben, zu den in WordPress standardmäßig schon vorhandenen Profilinfos zusätzliche Angaben zur eigenen Person zu machen, dann kann ich dies mit Buddypress leicht realisieren, indem ich einfach weitere Profilfelder hinzufüge. Das Plugin BuddyPress Profile Privacy hilft dann dabei festzulegen, welche der Profilfelder später welcher Benutzer sehen darf. Als Profilfoto kann ich einen bereits mit meiner Emailadresse assoziierten Gravatar benutzen oder selbst ein Foto hochladen und entsprechend zuschneiden.

Nach dem Login sollte der Nutzer – wie in Facebook auch – zu seiner eigenen Pinnwand geleitet werden, wofür das Plugin BuddyPress login redirect sehr nützlich ist. Je nach Zweck der Community-Page kann ich hier unterschiedliche Sprungziele nach dem Login definieren, die Nutzer z.B. direkt auch in ein Forum leiten. Praktisch auch dafür, um z.B. sicherzustellen, dass dringende interne Mitteilungen oder News nach dem Einloggen gelesen werden.

Um das „Dashboard“ von WordPress, also die Admin-Werkzeugleiste vor „Normal“-Nutzern komplett zu verstecken, ist das Plugin AG Custom Admin erste Wahl. Damit kann ich das eigentliche System im Backend, nämlich WordPress, vollständig vor den Nutzern verbergen und Einstellungsänderungen der Nutzer nur auf der eigenen Profilseite erlauben.

Plugins: nützlich und – ja: gefährlich

Es gibt noch eine Menge weiterer nützlicher Plugins, die einer neuen Buddypress-Seite Leben einhauchen können, auf die ich hier gar nicht vollständig eingehen möchte, weil jeder, der sich mit Buddypress beschäftigt, über kurz oder lang eh darüber stolpern wird.

Der Vorteil des Plugin-Systems ist die Einfachheit der Bedienung: Erweiterungen sind fix mit einem Klick installiert, auch wenn jeweils im Plugin selbst hier und da noch kleine Einstellungen vorgenommen werden müssen. D.h. ich kann die Funktionalität der Seite sehr fein abgestuft steigern, wenn ich das möchte. Ebenso einfach auf Mausklicks lassen sich Funktionen dann auch wieder entfernen.

Das Modul- bzw. Plugin-System von WordPress/Buddypress ist leicht zu handhaben, birgt aber auch – das soll nicht verschwiegen werden – einiges an Problemen. Speziell das interaktive, dynamische Konzept einer „sozialen“ Community-Seite bringt es mit sich, dass „unter der Motorhaube“ ausgiebig von Techniken wie Javascript/AJAX Gebrauch gemacht wird.
Oftmals kommen sich dabei die Javascript-Bibliotheken, die einzelne Themes und einzelne Plugins mitbringen, gehörig in die Quere. Und Buddypress selbst ist mitunter zu den eigens für Buddypress geschriebenen Plugins nicht immer kompatibel.

Das bedeutet: bevor ich ein neues Plugin auf eine funktionierende Seite loslasse, muss ich Zeit zum Testen einkalkulieren. Manches funktioniert out of the box, manches nicht oder nur bis zum nächsten Theme- oder Buddypress-Update. Also: Be Careful! Weniger ist hier – wie fast immer – mehr!

Fazit

Buddypress bohrt eine vorhandene WordPress-Seite gehörig in Richtung „Social Media“ auf. Ich kann wirklich ein kleines „Facebook“ daraus machen, ohne auf schon vorhandene Goodies wie das Blogging, feste Seiten oder ganz andere Erweiterungen wie Foren, Veranstaltungskalender, Kleinanzeigen usw. verzichten zu müssen. WordPress als Plattform ist so integrativ, dass es all diese Teile – wenn man dies wollte – leicht unter seinem Dach zusammen bringen kann. Die Modularität ist sicher Stärke, wenn man sie mit Bedacht nutzt. Aber sie kann auch Versuchung sein, schnell mal dieses oder jenes schöne Zusatzfeature zu implementieren, das man nicht wirklich braucht und das die Stabilität und Funktionalität dann womöglich ins Wackeln bringt.

Besonders für all diejenigen, die sich bereits mit WordPress beschäftigen, dürfte der „Heimvorteil“ ein nicht zu unterschätzendes Argument sein, einen ernsthaften Blick auf Buddypress zu werfen.

Als Erster einen Kommentar schreiben

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert