open-source Content-Management-System Typo3

(Archiv-Content) TYPO3 Fallstudie - XYZ-MEDIEN


(Die Studie wurde auf Kundenwunsch nachträglich anonymisiert)

Verknüpfung eines xt:Commerce-Shopsystems mit TYPO3

von Andreas von Studnitz und Dr. Erwin Lammenett

Einführung
Als Musikverlag produziert die XYZ GmbHsowohl Zeitschriften zu verschiedenen Musik-Themen als auch DVDs, Fachbücher,Kalender und Sonderausgaben. Im Zuge der Neuausrichtung des Internetangebots desVerlags wurde bereits im ersten Halbjahr 2005 ein Relaunch der Website desVerlags und der 11 Zeitschriften-Portale durchgeführt.

Diese Fallstudie behandelt den Aufbau des neuen Shopsystems mitHilfe des Open Source Shopsystems xt:Commerce. Der Schwerpunkt des Berichtes istdie Verzahnung der Shop-Inhalte mit technisch unabhängigen Websites wie denZeitschriften-Portalen (in TYPO3) oder dem ebenfalls neu entwickeltenKleinanzeigenmarkt (als TYPO3-Modul). Diese "plattformübergreifende" Verzahnungerlaubt es somit, nicht nur ein Shopsystem (mit xt:Commerce) und ein TYPO3-Webparallel zu betreiben, sondern auch die jeweiligen Inhalte zu verknüpfen.Produkte des Shops werden somit an beliebiger Stelle innerhalb der Websiteangezeigt, auch ohne dass sich TYPO3 und xt:Commerce auf demselben Webserverbefinden. Der Zugriff auf xt:Commerce von TYPO3 aus ist dank entsprechenderParameter sehr flexibel möglich.

Der Verlag
Der XYZ Verlag deckt einbreites Spektrum von Musikrichtungen ab, mit Fachpublikationen für denMusikbereich und verwandte technische Bereiche. Für den Verlag und das DutzendZeitschriften arbeiten ca. xx Mitarbeiter - dazu kommen über xxx freie Autoren.Neben Zeitschriften werden auch Fachbücher, DVDs und Kalender veröffentlicht.
Die Umstellung des Webauftritts auf ein einheitlichesContent Management System, das Open Source System TYPO3, bildet die Grundlage fürweitere notwendige Modernisierungen. Das technisch veraltete und visuell wenigansprechende bestehende Shopsystem sollte durch ein neues System ersetzt werden.Dabei standen folgende Punkte im Vordergrund, die im Pflichtenheft hervorgehoben wurden:

  • Geringe Umsetzungs- und Lizenzkosten
  • Ausgereiftes und professionelles Warenkorbsystem
  • Modernes, an das Layout der Verlags-Websiteangepasstes Design
  • Unterstützung verschiedenerProdukttypen:
    o Abonnements (mit unterschiedlichen Laufzeiten undAngaben zum Werber)
    o Einzelartikel aus den verschiedenen Zeitschriftenals PDF
    o Bücher, DVDsund sonstige Produkte
  • Einbindung vonKreditkarte und Bankeinzug als Zahlungsweisen für normale Produkte sowie vonMicropayment für Einzelartikel
  • An die verschiedenen Produkttypen angepassteLieferkosten
  • Automatisches Generieren von Buchtipps in denZeitschriftenportalen. Z.B. soll beim Thema Mixen ein Mixingbuch aus demPPV-Verlagsprogramm in einem Kasten angezeigt werden. Die Zuordnung soll überKategorien erfolgen, in die jedes Produkt eingeordnet ist.
  • Automatisches Anzeigen von Shop-Produkten im neu zu erstellendenKleinanzeigenmarkt und im Glossar. Zum Suchbegriff des Kunden sollenentsprechende Bücher, DVDs oder PDF-Artikel automatisch ausgegebenwerden.

Auf dieser Basis wurden von verschiedenen Firmen Angebote vorgelegt. DenZuschlag hat wieder die Aachener Internetagentur team in medias GmbH erhalten,deren Angebot auf dem Open Source Shopsystem xt:Commerce basierte. Gründe für denGewinn der Ausschreibung waren neben dem günstigsten Preis (xt:Commerce kostetkeine Lizenzgebühren) vor allem die gute Zusammenarbeit während der Umsetzungder Portalseiten. Außerdem konnte eine kurzfristige Umsetzung innerhalb von zweiMonaten garantiert werden.

Das Projekt
Das Kernprojektteam bestand aus Ralf Willke, der als freier Mitarbeiter desVerlages für das Pflichtenheft verantwortlich war und das Projekt für den Verlaggeleitet hat, und verschiedenen Mitarbeitern der Aachener Internetagentur teamin medias GmbH.

Auswahlprozess
Da team in medias bereits mehrere Projektemit dem Open Source Shopsystem xt:Commerce (www.xt-commerce.com) erfolgreichdurchgeführt hat, lag die Präferenz klar auf diesem bewährten System.xt:Commerce ist Nachfolger des bekannten Shopsystems osCommerce (www.oscommerce.com), welches seit Mitte2003 nicht mehr weiterentwickelt wird. xt:Commerce basiert ebenso wie dieses aufden verbreiteten Technologien PHP und MySQL. Der Haupt-Entwicklungsvorsprung vonxt:Commerce im Gegensatz zu osCommerce besteht in der ausgereiftenTemplate-Unterstützung auf Basis des verbreiteten Smarty-Systems. Hauptmerkmalevon xt:Commerce sind:

  • Ausgereiftes Warenkorb-System
  • Einstellen von Produkten in beliebig verschachteltenKategorien
  • Viele Features wie Staffelpreise, Sonderangebote,Bestsellerlisten, Kommentare, Gutschein-Funktion, Newsletter, …
  • Unterstützung verschiedener Zahlungs- undVersandmodule
  • Keine Lizenzkosten und offener Quellcode dankOpen Source Lizenz
  • Freie Verfügbarkeit von vielen Erweiterungen undModulen. Nach geringen Anpassungen sind auch osCommerce-Module nutzbar.
  • Schneller Support durch aktive Entwicklergemeinde
  • SSL-Unterstützung
  • Integrierter Cache

Die Umsetzung
1. Das Shopsystem
Die Umsetzung deseigentlichen Shopsystems ist ein Standard-Prozess, der sich kaum von anderenProjekten unterscheidet. Dennoch mussten einige Erweiterungen und Anpassungendes Shopsystems vorgenommen werden:

  • Aufnahme zusätzlicher Datenbankfelder wiebeispielsweise der ISBN für Fachbücher.
  • Integration einer Kategorisierung für die Produkte desVerlags. Jedes Produkt kann bis zu zwei Kategorien (z.B. "Schlagzeug","Veranstaltungstechnik", …) zugeordnet werden.
  • Integration der verpflichtenden Angabe eines Werbersbei Abschluss eines Prämien-Abonnements.
  • Erweiterung des Systems um eine Autorendatenbank.Hierzu wurde die vorhandene und nicht benötigte Hersteller-Datenbank verwendetund entsprechend angepasst.
  • Erstellung eines neuen Versandkosten-Moduls, das dierelativ komplexe Versandkostenstruktur des Verlags abbildet. Die Versandkostensind dabei abhängig von der Anzahl der bestellten Bücher, der Gesamtsumme fürBücher, der Gesamtsumme für andere Produkte sowie von abgeschlossenenAbonnements, die für unterschiedliche Zeitschriften auch unterschiedlicheLiefergebühren kosten. Und natürlich berechnen sich die Liefergebühren anders,wenn die Lieferung an eine Auslandsadresse gehen soll.
  • Anpassung des Backends zur Verwaltung der obigen Punkte.


2. Die Artikeldatenbank
Der zweite Teil ist die Umsetzung derArtikeldatenbank. Zurzeit befinden sich aktuelle Artikel von 5 verschiedenenZeitschriften online, insgesamt mehrere hundert Einzelartikel. Aufgabe war es,eine Möglichkeit zum Einstellen, Kategorisieren und Verwalten der Artikel zuschaffen. Die Artikel sollten im PDF-Format zum Download angeboten werden, wobeijeder Download eine geringe Summe kostet. Um diese Kleinbeträge (ab 40 Cent)nicht über Kreditkarte oder Lastschrift abrechnen zu müssen, entschied sich derVerlag, die Abrechnung über einen Micropayment-Anbieter, in diesem FallClick&Buy,durchzuführen. Click&Buy wird von mehreren tausend Websites allein inDeutschland genutzt, darunter prominente Anbieter wie Spiegel Online (www.spiegel.de) oder der Heise Verlag (www.heise.de). Ein Kunde, der sich für einen Artikelinteressiert, muss sich zunächst bei Click&Buy registrieren. Fortan kann er mitClick&Buy einkaufen. Die Bezahlung erfolgt üblicherweise einmal monatlich perAbbuchung von einem Konto oder von Kreditkarte. Wenn man sich einmal registrierthat, kann man ab diesem Zeitpunkt mit wenigen Mausklicks bezahlen.

Die Artikeldatenbank wurde nicht, wie ursprünglich vom Verlag vorgesehen, alsseparate Anwendung erstellt, sondern in den xt:Commerce-Shop integriert. DieseEntscheidung ermöglichte wesentlich geringere Umsetzungskosten, da dieInfrastruktur für das Einstellen und Verwalten von Produkten schon vorhandenwar. Einzelartikel werden als spezieller Produkttyp "Article" angelegt. Wenn einArtikel angelegt oder bearbeitet wird, erhält der Redakteur eine, im Gegensatzzu "normalen" Produkten, modifizierte Eingabemaske.

typo3 Eingabemaske
Abbildung 1: Eingabemaske Einzelartikel

Beim Einstellen eines neuen Artikels wird außerdem der Preis automatischberechnet. Dieser hängt von der Seitenzahl ab, kann jedoch auch manuell geändertwerden. Umgesetzt ist diese Funktionalität mit einer einfachenJavascript-Funktion.

Die Darstellung von Artikeln in der Übersicht des Shopsystems unterscheidetsich von der Darstellung anderer Produkte. So ist es nicht möglich, eineDetailansicht zu einem Artikel aufzurufen - alle wichtigen Informationenbefinden sich bereits auf der Übersichtsseite, ebenso die Möglichkeit zumDownload des Artikels. Besonders wichtig: Die Funktionalität zum Einstellen inden Warenkorb wurde für den Produkttyp "Article" deaktiviert, da sich diePDF-Dateien ausschließlich über Firstgate herunterladen lassen sollen.

typo3 Einzelartikel
Abbildung 2: Ein Einzelartikel in der Übersicht

3. Verknüpfung zu externen Seiten
Teil 3 der Umsetzung befasste sich mit der Einbindung inexterne Seiten. So sollte es z.B. auf einer der Magazinseiten möglich sein, dasszu einem Beitrag mit dem Thema "Schlagzeug" in einer Box Produkte aus dem Shopzu eben diesem Thema angezeigt werden - direkt verlinkt zum Shopsystem. Dabeistehen die meist verkauften Produkte ganz oben.

typo3 Shop externe Seiten
Abbildung 3: Beispiel für die externe Einbindung vonShop-Produkten


Die Zuordnungkann entweder anhand der Kategorisierung erfolgen (der Redakteur kann im Backendder Website eine oder mehrere Kategorien wählen, die die angezeigten Produkteebenfalls haben müssen), oder anhand von Schlagworten.

Eine zweite Anforderung war die Einbindung einer Artikel-Suchfunktion auf deneinzelnen Magazinseiten. Eine Suchmaske, ähnlich der im Shop, sollteeingebunden werden. Da die Suche nur anhand von Daten aus dem Shopsystemstattfinden kann, verweist das Formular auf eine Shop-Ergebnisseite. Diese istallerdings so modifiziert, dass sie direkt in das Layout der externen Seiteeingebaut wird - der Benutzer kann nicht erkennen, dass er sich eigentlich schonim Shop-System befindet. Deutlich wird dies erst, wenn er auf einen der Artikelklickt - dann wird er in das Shopsystem weitergeleitet, wo er den Artikel überClick&Buy lesen kann.
Technisch ist die Ergebnisseite vollständig in dasTYPO3-Web eingebunden. Per Include-Funktion wird die speziell für diesen Zweckangepasste Such-Ergebnisseite aus dem Shop nativ in TYPO3 eingebunden. Natürlichwerden nur die Artikel angezeigt, die zum jeweils gewählten Magazin gehören.Dies wird, ebenso wie die gesuchten Stichworte, per GET-Variable an dasShopsystem übergeben.

Kurzfristiger Projekterfolg
Im Anschluss an eine beimVerlag durchgeführte Redakteursschulung wurde das Shopsystem zwei Tage späterfreigeschaltet. Bereits kurznach der Einführung wurde klar, dass das neue Shopsystem von den Kundenwesentlich besser angenommen wurde. Bereits nach zwei Wochen konnte festgestelltwerden, dass sich der Umsatz des Shops im Vergleich zum Vorjahreszeitraumdeutlich gesteigert hatte.

Fertigstellungszeitraum
Das Projekt wurde innerhalb einesengen Zeitrahmens von 6 Wochen abgeschlossen. Eine Redakteursschulung wurdegegen Ende des Projekts durchgeführt.

Herausforderungen
Wie weiter oben beschrieben, sollte es möglich sein, von externen Seiten, diemit dem Shopsystem technisch nichts zu tun haben, Produkte aus xt:Commerce,jeweils thematisch passend, anzubieten. Da es üblicherweise nicht möglich ist,von einer beliebigen Website auf die SQL-Datenbank des Shops zu verweisen, wurdeeine Lösung mittels PHP-Include angestrebt. Vom Shopsystem wird einentsprechender Code-Schnipsel angeboten, der dann direkt von beliebigen Websiteseingebunden werden kann. Der Code ist dabei mit aussagekräftigen CSS-Klassenversehen, sodass das Layout innerhalb der jeweiligen TYPO3-Seite bestimmt werdenkann. Dies war besonders wichtig, da diese Funktion auf unterschiedlichenMagazin-Seiten sowie dem Kleinanzeigenmarkt eingebunden werden sollte, diejeweils unterschiedliche Layouts benutzen.
Hierfür wurde eine Kopie der inxt:Commerce integrierten Suchfunktion verwendet. Die entsprechendenSuchkriterien werden also von der externen Website vorgegeben und alsGET-Variable in der URL übergeben. Die Suchfunktion wertet die übergebenenVariablen aus und durchsucht die Shop-Datenbank nach passenden Produkten -sortiert nach Verkaufsrang. Diese Produkte werden in vorgegebener, aberunformatierter Form als Quellcode bereitgestellt, die dann im externenSeitenlayout dargestellt werden. Einen Hinweis, dass die Produkte von eineranderen Website stammen, gibt es dabei nicht, sodass ein Besucher nichts davonmitbekommt.

Eine entsprechende URL, die in TYPO3 eingebunden wird, sieht beispielsweisewie folgt aus:

http://shop.BEISPIEL.de/search.php?
keywords=Yamaha&category_id=56&max=10&products_type=Book,Article&
show_price=1&show_image=1&show_author=1&show_magazine=1

Die einzelnen Parameter erklären sich wie folgt:

  • keywords:
    Ein oder mehrere Schlüsselwörter,nach denen gesucht wird.
    ÜberSchlüsselwörter gefundene Produkte haben Vorrang vor über Kategoriengefundenen Produkten.
  • category_id:
    DieKategorie, aus denen weitere Produkte stammen sollen. Die hierüber gefundenenProdukte haben zweite Priorität. Durch Kommata getrennt können auch mehrereKategorien angegeben werden.
  • max:
    Die maximaleAnzahl angezeigter Produkte
  • products_id:
    Wenndirekt bestimmte Produkte ausgegeben werden sollen, können diese direkt überdie Produkt-ID angegeben werden, mehrere werden durch Kommata getrennt.
  • products_type:
    Book,Article oder DVD, oder durch Kommata getrennt auch mehrere.
  • show_price:
    Wenndieses Attribut gesetzt ist, wird der Preis beim Produkt mit angezeigt.
  • show_image:
    Analogfür die Anzeige eines Produktbildes
  • show_author:
    Analogfür den Autor eines Buches oder eines Artikels
  • show_magazine:
    Analog für Zeitschrifteninformationen (Zeitschriftenname,Ausgabe, Seite)
  • magazine_id:
    Wenn angegeben, Einschränkungauf die Artikel einer bestimmten Zeitschrift.

Durch die große Anzahl Parameter ist es möglich, die Ausgabe anverschiedenste Bedürfnisse anzupassen. Diese Flexibilität macht es möglich dasSkript für unterschiedliche Verwendungszwecke einzusetzen.

Ein ähnliches Modul wird auch für den Kleinanzeigenmarkt und das Glossarverwendet. Auf xt:Commerce-Seite ist die Technik identisch, es wird das gleicheflexible PHP-Script verwendet. In TYPO3 wird ein Plugin des neu entwickeltenModuls ClassifiedAds eingesetzt.
Die Parameter für die xt:Commerce-Funktionsind dabei bis auf Schlüsselwort und Kategorie festgelegt und in einerKonfigurationsdatei festgeschrieben. Keywords und Kategorien werden durch dieEingabe des Kunden vorgegeben. Dies bietet sich an, da diese Daten auch bei derSuche nach Kleinanzeigen verwendet werden. Der Kunde bekommt somit direktpassende Buchtipps zu seinem Suchbegriff angezeigt. Ein Beispiel sehen Sie imfolgenden Screenshot. Der rechts oben angegebene Suchbegriff lautet "Piano", undals Resultat werden im rechten unteren Bereich mehrere Buchtipps zu diesemBegriff und der angegebenen Kategorie angezeigt.

typo3 kleinanzeigen
Abbildung 4: Produktvorschläge imKleinanzeigenmarkt

Autoren:
Andreas von Studnitz, www.typo3-macher.de
Dr. Erwin Lammenett, www.inmedias.de

Quick Referenz

News

09.12.20120912

Single Sign-On für Magento und TYPO3

team in medias realisiert Single Sign-On für Magento und TYPO3.

25.01.20122501

TYPO3 Akademie, München

Kurz notiert: Zum fünften Mal findet im Februar die TYPO3 Akademie in München statt. Unser Geschäftsführer Dr. Erwin Lammenett wird dort zum Thema "Die Veränderung von SEO in Zeiten von Google Universal Search" vortragen. 

03.01.20120301

Raumbuchungssystem Extension

Unsere TYPO3 Raumbuchungs-Extension ermöglicht die komfortable Verwaltung und Buchung Konferenzräumen, Besprechungsräumen, Schulungsräumen oder Fahrzeugen. Details zu dieser spannenden Extension erfahren Sie hier: Raumbuchungssystem.

07.11.20110711

Kongress Klinik Marketing 2011

Vortrag unseres Geschäftsführers Dr. Erwin Lammenett beim Kongressforum am 23.11.2011 zum Thema "Die perfekte Klinikwebsite".
Ein Internetauftritt gehört mittlerweile auch für Krankenhäuser
zum Must-have. Aber worauf kommt es wirklich an? Welche Erwartungen
haben Patienten, was ist beim Design zu berücksichtigen?
Und wie wird der Webauftritt zum Akquiseinstrument?

18.10.20111810

TYPO3, Oracle und SAP

Das OpenSource CMS TYPO3, Oracle und SAP in einem Projekt - noch vor wenigen Jahren war dies undenkbar. Der Stromversorger energieGUT setzt auf OpenSource in Kombination mit kommerziellen Technologien.  

19.08.20111908

Sieben auf einen Streich - TYPO3 macht es möglich

Gleich sieben neue Webseiten veröffentlichte die caverion Gruppe mit einem einzigen Content-Management-System (CMS). Hierbei setzte caverion auf TYPO3, einem in Deutschland sehr häufig verwendeten Open Source CMS und beauftragte für den Relaunch die Aachen-Hamburger Internetagentur team in medias GmbH.

Copyright by team in medias GmbH

Kontaktieren Sie uns

CAPTCHA-Bild zum Spam-Schutz Wenn Sie das Wort nicht lesen können, bitte hier klicken.
Pascalstraße 15
52076 Aachen

Tel:   0241   / 412 59 79 0
Fax: 02408 / 71 99 85
Flughafenstraße 52
22335 Hamburg

Tel:   040    / 232 052 70
Fax: 02408 / 71 99 85

QR-Code

qr-code