Drupal als Social Media Framework
Carsten Logemann
0. Möglichkeiten für Social Media-Software
- Siehe auch Stichwörter "Social Software" und "Online Community"
- Software as a Service z.B. Mixxt
- komplette Neu-Programmierung z.B. in Java (sehr aufwendig)
- Diverse Programmier-Frameworks z.B. mit Ruby on Rails (aufwendig)
- Wiki, Blog und umfangreichere CMS-Software (oft wenig fertige Funktionen)
- Web-Frameworks mit fertigen Social Media-Bausteinen (ein schneller Weg)
1. Kern-Funktionen und API
- nicht hierarchische Node-Inhalte mit Kommentaren
- Inhalts-Typ-Unterscheidung und Inhaltsfelder
- Mehr-Benutzerkonzept m. Rollen u. Rechten, Anmeldung m. OpenID
- kooperative Inhaltsbearbeitung und Revisionen
- Ausgefeiltes Taxonomie (Tagging) -Konzept
- Mehrsprachigkeit und Hierarchie in Inhalten, wenn gewünscht
- Dynamische, verschachtelbare Templates mit Regionen
- Ausgefeilte, prozessorierntierte API (Hook-System) z.B.:
- Menüsystem, das auch dynamsiche Seiten bildet
- Ausgefeilte Formular-API (FAPI)
- vielseitig nutzbare Inhalts-Filter
- Block-Konzept dyamischer Inhalte
- xmlrpc - Datenaustausch z.B. für ext. Blog-Software
2. Gruppen/Teams und soziale Beziehungen
Das Organic-Groups-Modul ermöglicht
- offene oder moderierte Gruppen
- versteckte oder öffentliche Gruppen
- thematische Strukturen und Kommunikationen
- separare Rollen und Rechte
Mit User-Relationships können
- soziale Beziehungen definiert werden inkl. Einladung
- mit und ohne gegenseitige Bestätigung
- mit impliziten Verbindungen (Manager impliziert Mittarbeiter)
3. Framework und API massiv erweitern
Mächtige Erweiterungen zum Teil ohne Programmierung
- DB-Abfragen (gefilterte Listen aller Art) mit Views (inkl. RSS Export)
- Ctools-APi und Panels, für komplexe, dynamische Layouts
- Termine mit Date-API, Calendar inkl. iCal, Inhalte terminiereren
- Benutzer und Nodes (ink. Termine) markieren mit Flag
- Mit webform einfach Formulare z.B. komplexe Kontaktformulare erstellen
- Das Zugriffsrechte-System erweitern z.B. mit Content Acccess
- Abstimmungen ganz unterschiedlicher Art ermöglichen mit der Voting API
- Mit Rules an Prozessen aller Art (inkl. flaggen) Aktionen verknüpfen
- Mit Apache Solr eine mächtige Lucen-Suchmaschine integrieren
- Vielfältige E-Commerce-Funktionen z.B. mit Ubercart
- Caching-Mechanismen nach bedarf aufrüsten z.B. mit Cachrouter
- Mit Services eine mehrere, externe Schnitstellen bereitstellen (z.B. für Flash)
4. Kommunikations- und Interaktions-Module
Ein paar Beispiele:
- Zugangs-Codes auf Wunsch inkl. Gruppen-Zuordnung mit Regcode
- Private Mitteilungen inkl. Mail-Benachrichtigung mit Privatemsg
- Newsletter verwalten mit simplenews
- Registrierung (Signup) bei Events ink. Benachichtigung per E_Mail
- Benachrichtigungen für neue oder veränderte Inhalte mit Notfications
- Foren-, Wiki-, Gästebuch-, Blog- und Mikroblog (Status) Funktionen
- Einen einfachen Webchat oder gleich XMPP-Server anbinden
- Projekt-Management z.B. mit STORM oder support relaisieren
5. Mit dem Rest der Welt vernetzen
- Benutzer per LDAP, Open ID, Oauth anmelden oder Accounts anbieten
- Links managen mit weblinks oder links und überprüfen mit linkchecker
- Bilder mit Flickr austauschen, upload, download und synchronize
- Feeds, inkl. Ical Feed erzeugen mit Views und Calendar
- Externe RSS-Feeds einlesen und weiterverarbeiten mit Feeds
- Twitter und Identi.ca sendend und empfangend einbinden,
- Kurz URL-Dienste wie z.B. TinyURL nutzen oder selbst anbieten
- Metadaten mit Open Calais gewinnen oder Technorati-Tags nutzen
- mit LinkedIn verbinden oder Skype-Status zeigen
- Mit Facebook anmelden und die vielfältige Facebook-API nutzen
- Google Groups-Anmeldung, Google-Maps, -Weather und -Docs integrieren
- Yahoo YUI, -Pipes und - Geocoding integrieren oder mit disqus vernetzen
- xmlsitemaps, metatags und links zu del.icio.us, Digg und co. anbieten.
- Amazon, Ebay, diverse Ads oder Aktienkurse einbinden uvm.