« Ist das Newssystem einfach nur eine View auf eine Blogsoftware? Telefonieren mit Skype und dem Asus Eee 900 mit Ton und Bild »

Factory- und Adapter Pattern für die Erweiterung von WordPress

3. Juni 2009 Roland

Dieser Artikel ist Teil 55 von 70 der Artikelserie Newssystem

Ich habe gestern im Artikel Ist das Newssystem einfach nur eine View auf eine Blogsoftware darüber gegrübelt dass ich mit dem Newssystem eigentlich nur eine Erweiterung von WordPress beschrieben habe.
Vermutlich trifft das Newssystem am ehesten auf WordPress MU oder BuddyPress zu. Aber schlussendlich ist es nichts weiter als WordPress ein bisschen anders angesteuert und dargestellt.

Was für Erkenntnisse habe ich heute?

Ich habe mittlerweile erkannt, dass ich am Wochenende am Barcamp in Dornbirn locker über die Modularisierung und Benutzung von bestehenden Systemen sprechen kann.
Am Beispiel des Newssystems müssen vermutlich nur

  • Ein Endedatum, an dem die News (der Artikel) nicht mehr dargestellt werden darf.
  • Eine einfache Eingabe für die News, also keine komplette WordPress Eingabe sondern wirklich nur Titel und Beschreibung sowie Start- und Endedatum.
  • Einige Views, mit denen die News Einträge überall ohne das komplette WordPress Verhalten angezeigt werden können. Dies kann über RSS Feeds oder über explizit entwickelte Views erreicht werden.

Wie könnte man WordPress entsprechend einbinden?

Nichts leichter als das!
Wir nehmen eine Factory Klasse, die uns für die unterschiedlichen WordPress Versionen die entsprechenden Adapterklassen anzieht.
Auf diese Weise sind wir vom WordPress entkoppelt und erhöhen nicht die Komplexität bei einem Update.
Das Ganze könnte ungefähr so aussehen:
Adapter um WordPress oder BuddyPress Komponenten zu kapseln
Ich erstelle einen Adapter, oder eventuell eine Fassade, mit der die Komponenten von WordPress oder BuddyPress an mein eigenes System angepasst werden.
Da sich während eines WordPress Updates die Schnittstellendefinition verändern kann, wird pro WordPress Version ein dafür notwendiger Adapter oder Fassade geschrieben.
Falls sich nichts ändert, kann natürlich der gleiche Adapter verwendet werden.
Über eine Fabrikklasse kann die im Moment aktive Adapterklasse instanziiert und zurückgeliefert werden.
Die Fabrikklasse kann relativ einfach die Version des aktuell verwendeten WordPress auslesen und entsprechend den richtigen Adapter zurückliefern.
Cool oder?

Wie sieht es mit der Komplexität aus?

Auf dem Fucamp in Furtwangen habe ich über Seriennavigation«Ist das Newssystem einfach nur eine View auf eine Blogsoftware? Wieso will ich das Newssystem nicht als WordPress Plugin erstellen?»

Merken und weiterempfehlen Diese Icons verlinken auf Bookmark Dienste bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • Technorati
  • Wikio DE
  • Webnews
  • MisterWong
  • Y!GG
  • Digg
  • del.icio.us

Artikel mit ähnlichen Schlagwörtern

Der Beitrag wurde am Mittwoch, den 3. Juni 2009 um 18:41 Uhr veröffentlicht und wurde unter Design Pattern, IT, Programmieren abgelegt.

Dir gefiel der Artikel? Dann abonniere doch den RSS Feedrss

Du kannst die Kommentare zu diesem Eintrag durch den RSS 2.0 Feed verfolgen. Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.

...deine Chance den ersten Kommentar zu schreiben... ;-)

Schreibe mir

Kommentare abonnieren ohne selbst zu kommentieren

zum Seitenanfang