TYPO3 Commerce Extension



Ähnliche Dokumente
TemplaVoila T3AK07 - TYPO3 Akademie 2.0

Web Analytics Kontrolle von Online Aktivitäten

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Extending tl_member. Andreas Fieger

Emotionalisierung von Marken. durch zielgruppenfokussierte Content-Strategien

Typbasierte Analyse von JavaScipt

TYPO3 CMS 6.2 LTS. Die neue TYPO3- Version mit Langzeit- Support

T Y P O 3 M I T M A G E N T O E C O M M E R C E M I T E N T E R P R I S E C O N T E N T M A N A G E M E N T

ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel

Bereitstellung eines RSS Feeds mit tt_news

Klassendefinitionen verstehen

Einen Mitgliederbereich in Wordpress einrichten. Drei Membership- Plugins im Vergleich

Die TMB Contentstrategie die wichtigste Folie!

Übungen Programmieren 1 Felix Rohrer. Übungen

Online-Marketing & -Verkauf. Best-Practice für KMUs eine Entscheidungshilfe

FIS: Projektdaten auf den Internetseiten ausgeben

Suchmaschinenoptimierung (SEO) für Ihren Shop. Mario Rieß Chief Technology Officer

Suchmaschinenoptimierung. für Typo 3

Fussball.de JavaScript

Arrays Fortgeschrittene Verwendung

Online-Werbung. Welche Möglichkeiten der Online-Annoncen gibt es? Google AdWords und Co.

ecommerce Deshalb ist es für Unternehmen jeder Grösse wichtig, den Schritt in den Online-Verkauf nicht zu verpassen.

Flexible und mobilfähige Lösung für den Luxusuhren-Marktplatz

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort

Optimieren Sie Ihre n2n Webseite

Auf die richtige Verbindung kommt es an! Wir präsentieren Ihnen: CROSS MEDIA PUBLISHING

Einführung in die Java- Programmierung

Schulung Marketing Engine Thema : Einrichtung der App

Trends im E-Commerce Durchgeführt von der Fachgruppe E-Commerce im BVDW Kooperationspartner: Penton Media GmbH

doubleslash Net-Business GmbH

LIVE/11 - WEBSPECIAL. Andreas Förthner - Clemens Kalb

Einführung in PHP. (mit Aufgaben)

» Export von Stud.IP-Daten auf eigene Web-Seiten» Workshop Donnerstag,

Lua. June 9, Marcus Brenscheidt Marcin Golkowski ( Dynamische Programmiersprachen Lua )

Filemaker Module. Einführung in die Vorteile modularer Filemaker Programmierung. Karsten Risseeuw, Kursiv Software

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

Das neue Volume-Flag S (Scannen erforderlich)

Objektorientierte Programmierung

Einführung in Subversion

Newspaper Online Publishing einer Tageszeitung

AMAN. Vergleich der verschiendenen RedSYS- Instanzeninstallationsmöglichkeiten

Traditionelle Suchmaschinenoptimierung (SEO)

Transparente Hausverwaltung Marketingschmäh oder doch: eine neue Dimension der Dienstleistung?

1 WEB ANALYTICS: PROFESSIONELLE WEB-ANALYSEN UND REPORTING FÜR IHR ONLINE MARKETING.

Hochschule Karlsruhe Technik und Wirtschaft Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Control-M Workload Change Management 8

Anforderungsprofil für den Homepage Relaunch:

Schulung Marketing Engine Thema : Einrichtung der App

Arrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Dr. Klaus Körmeier BlueBridge Technologies AG

Google Analytics einrichten

Arrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Erste Schritte mit WordPress Anleitung WordPress Version 2.8.X

Internetmarktplätze und eigener Online-Shop so sind Sie mit beiden Vertriebswegen erfolgreich

NetMaster Service Systems

Automatisiertes Publizieren - Der kleine Unterschied im Crossmedia Publishing macht sich bezahlt

Rapide An Event-Based Architecture Definition Language

Hallo, einfach. C LO U D. symbl.cms und framework Beschreibung

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt

Einführung in die Programmierung

Abenteuer e-commerce Erfolgreich mit dem eigenen Onlineshop.

5 Zweisprachige Seiten

OpenProposal: Anwendervorschlägen für. 27. November 2008 WIR FORSCHEN FÜR SIE. Asarnusch Rashid Herbert Schäfler FZI Forschungszentrum

Der Weg zur eigenen App

Präsentation zur Vorstellung meiner Bachelor-Arbeit beim BSE- Seminar. Vortrag von Patrick Bitterling

Mehrsprachigkeit auf bremen.de. Ausgangslage:

HOW TO CREATE A FACEBOOK PAGE.

Einführung in die Programmierung für Wirtschaftsinformatik

Next Generation CMS. API zu ihrem Content

Konzept zur Push Notification/GCM für das LP System (vormals BDS System)

10.6 Programmier-Exits für Workitems

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Struts 2 Das Imperium schlägt zurück?

Anleitung zum erstellen von DVD/ CD zum Sichern der Volumes:

Fragenkatalog für die Entwicklung einer Website

Holen Sie noch mehr aus Ihren Bewertungen heraus

Webcontrolling Umsetzung in die Praxis. Toll, und wie ist es wirklich?

räber Neue Kunden gewinnen Mit Online-Marketing zum Ziel Content- und Online-Marketing für KMU

MOBILE USABILITY. Johannes Ewald peerigon UG

Kian T. Gould. Case Study Cisco Webex Cisco Webex in Kurzform. T3CON08 TYPO3 Anwenderforum. T3CON08 TYPO3 Anwenderforum

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen.

Warum brauche ich eine Website?

Daten in EPUB visualisieren und dynamisch aktualisieren

AJAX Implementierung mit Joomla!

Symbole zur Veranschaulichung der einschlägigen Informationskategorien Interoperabilität. Name des Unternehmers. Internetverbindung

TYPO3 Super Admin Handbuch

20 Shades of Fashion Going International with Magento EE

Dokumentation Typo3. tt - news - Nachrichtenmodul

Digitale Qualitätsmanagement-Systeme im Rettungsdienst -Aktueller Stand-

desk.modul : WaWi- Export

Bauteilattribute als Sachdaten anzeigen

Transkript:

TYPO3 Commerce Extension Einsatzmöglichkeiten am Beispiel von www.hai-end.com

Thanks2Developers Ingo Schmitt Volker Graubaum Thomas Hempel (team@typo3-commerce.org) 14.03.08 TYPO3 Commerce 2

Versionsstand Eingesetzte Version: 0.9.3 (SVN) Aktuelle Stable Version: 0.9.2 (Last Updated 28.06.2007) 14.03.08 TYPO3 Commerce 3

Gliederung Allgemeine Anforderungen an Shopsysteme CMS & Shopsystem Besonderheiten an www.hai-end.com Kurze Commerce Einführung Kritik Commerce Commerce Extensions selber schreiben 14.03.08 TYPO3 Commerce 4

Was wird verkauft 90 80 70 Quelle: http://www.ecommerce-leitfaden.de 60 50 40 Anteil in % 30 20 10 0 Internet-Dienstleistungen Physische Waren (Versandhandel) Digitale Güter Reisen Sonstiges 14.03.08 TYPO3 Commerce 5

Herstellerwünsche -> Shopkriterien Kundenverwaltung Versandkostenberechnung Bestellverwaltung ca. 90% Automatisierte Suchmaschinenoptimierung Anbindung an Warenwirtschaftssysteme ca. 70% Ebay / Preissuchmaschinen Auswertung / Tracking Digitale Güter ca. 50% 14.03.08 TYPO3 Commerce 6

Kundenwünsche ->Shopkriterien Nutzerfreundliche Navigation Anbindung möglichst vieler Zahlungsmöglichkeiten Schnelle Kaufabwicklung 14.03.08 TYPO3 Commerce 7

Wohin geht die Reise? Maximale Flexibilität Anbindung an externe Tools Preisvergleichsysteme Subshop-Systeme Usability für Hersteller und Kunde Navigation per Filter 14.03.08 TYPO3 Commerce 8

Kombination CMS / Shopsystem CMS TYPO3 TYPO3 Commerce Hohe Usability SEO / Barrierefreiheit Komplexe Benutzerrechte- Struktur beliebige Produktkategorien- & Artikelstruktur Digitale Güter Viele Zahlungsarten Sehr viele Extensions Viele HOOKs 14.03.08 TYPO3 Commerce 9

Nachteile der Commerce Extension Kein vernünftiges Error-Handling Weiter-Entwicklung scheint zu stehen (letztes Update im TER: 28.06.2007 Im Bugtracker tut sich aber was) Es gibt kein Mehrzahl -Objekt Artikel werden als Metaobjekte missbraucht Wenig Dokumentation von den Entwicklern 14.03.08 TYPO3 Commerce 10

Vorteile der Commerce Extension 100% integriert in TYPO3 Flexible Erweiterungsmöglichkeiten Zukunftsfähiges Datenmodell 14.03.08 TYPO3 Commerce 11

Performance Wenige Artikel Navigation über Listen Viele Artikel Navigation über Listen Wenige Artikel Navigation über Filter Viele Artikel Navigation über Filter 14.03.08 TYPO3 Commerce 12

Hai-End.com Zusammenarbeit von Cross Content Media und Ososoft GbR. 3500 Produkte / 8000 reg. Kunden / 800 Besucher pro Tag Unterschiedliche Navigationskonzepte in einem Shop Verschiedene Zahlungsmittel / Finanzierung über Bank Streichpreise Dynamische AJAX Filter Cross Selling 14.03.08 TYPO3 Commerce 13

Besonderheiten in der Umsetzung Navigationsstruktur über TemplaVoila Verzicht auf Gebrauch der Übersichtstemplates von Commerce Einstiegspunkte über Suche Navigation Quicklinks 14.03.08 TYPO3 Commerce 14

Folgen Vielzahl von Produktdetail-Pluginseiten Produkt kennt seine(n) Produktdetailseite nicht 14.03.08 TYPO3 Commerce 15

Produkt!= Artikel Produkt ist eine Produktlinie Artikel sind verschiedene Ausprägungen der Produktlinie Beispiel: Senseo Kaffeemaschine ist Produktlinie Artikel wären Senseo rot / blau / schwarz / silber 14.03.08 TYPO3 Commerce 16

Typische Initialisierung $prodobj = t3lib_div::makeinstance('tx_commerce_product'); $prodobj->init($productuid); $prodobj->load_data(); $articleuidcheap = $prodobj->getcheapestarticle(); $articlecheapobj = t3lib_div::makeinstance('tx_commerce_article'); $articlecheapobj->init($articleuidcheap); $articlecheapobj->load_prices(); $price = $articlecheapobj->get_price_gross(); 14.03.08 TYPO3 Commerce 17

$a->load_atclobjs_by_attributevalue Performanceschwächen 14.03.08 TYPO3 Commerce 18

Article prices <?xml version="1.0" encoding="utf-8" standalone="yes"?> <T3FlexForms> <data> <sheet index="sdef"> <language index="ldef"> <field index="price_gross_77"><value index="vdef">189.00</value></field> <field index="price_net_77"><value index="vdef">158.82</value></field> <field index="hidden_77"><value index="vdef">0</value></field> <field index="starttime_77"><value index="vdef">0</value></field> <field index="endtime_77"><value index="vdef">0</value></field> <field index="fegroup_77"><value index="vdef">0</value></field> <field index="purchase_price_77"><value index="vdef">109.00</value></field> <field index="price_scale_amount_start_77"><value index="vdef">1</value></field> <field index="price_scale_amount_end_77"><value index="vdef">1</value></field> <field index="create_new_scale_prices_fe_group_77"><value[...]>0</value></field> </language> </sheet> </data> </T3FlexForms> 14.03.08 TYPO3 Commerce 19

Streichpreise $article_prices_tempcolums = Array ( 'price_strikethrough' => Array ( 'exclude' => 1, 'label' => 'LLL:EXT:com_strikethroughprices/locallang_db.xml:label_strikethrough', 'l10n_mode' => 'exclude', 'config' => Array ( 'type' => 'input', 'size' => '30', 'eval' => 'double2,nospace', ) ), ); t3lib_div::loadtca('tx_commerce_articles'); t3lib_extmgm::addtcacolumns('tx_commerce_articles',$article_prices_tempcolums,1); t3lib_extmgm::addtoalltcatypes('tx_commerce_articles','price_strikethrough;;;;1-1-1'); 14.03.08 TYPO3 Commerce 20

Streichpreise function additionalmarkerarticle($markerarray,$articleobj,$parent) { $markerarray['price_strikethrough'] = ''; $markerarray['preisbiss'] = ''; if ($pss = $this->getstrikethroughpricemarker($articleobj)) { $markerarray['price_strikethrough'] = $pss; } $markerarray['price_strikethrough_euro'] = $this->getstrikethroughprice($articleobj); if ($this->issetstrikethroughprice($articleobj)) { $markerarray['preisbiss'] = '<div class="preisbiss"> </div>'; } return $markerarray; } 14.03.08 TYPO3 Commerce 21

Streichpreise function getstrikethroughpricemarker($articleobj){ $sp = $GLOBALS['TYPO3_DB'] ->exec_selectgetrows('price_strikethrough','tx_commerce_articles','uid='. $articleobj->uid); } if ($sp[0]['price_strikethrough'] == '0.00') {return false;} return $sp[0]['price_strikethrough']. ' EUR'; 14.03.08 TYPO3 Commerce 22

Zahlungsarten Wie füge ich z.b. Paypal als neue Zahlungsart hinzu? 14.03.08 TYPO3 Commerce 23

Paypal Paypal2commerce Commerce -> Categories -> SYSTEM -> PAYMENT -> new Article : Paypal Price = 0 tx_commerce_articles -> classname = paypal 14.03.08 TYPO3 Commerce 24

Eigene Zahlungsarten Wie würde man eine neue Zahlungsart implementieren? 14.03.08 TYPO3 Commerce 25

localconf.php $TYPO3_CONF_VARS['EXTCONF']['commerce']['SYSPRODUCTS']['PAYMENT']['types'] ['newpaymenttype'] = array ( 'path' => t3lib_extmgm::extpath('newpaymenttype').'class.tx_newpaymenttype.php', 'class' => 'tx_newpaymenttype', 'type'=>2, ); 14.03.08 TYPO3 Commerce 26

class.tx_newpaymenttype.php function needadditionaldata($pobj) { return false; } /** * This method is called in the last step. Here can be made some final checks or whatever is * needed to be done before saving some data in the database. * Write any errors into $this->errormessages! * To save some additonal data in the database use the method updateorder(). * @param array $config: The configuration from the TYPO3_CONF_VARS * @param array $basket: The basket object * * @return boolean True or false */ function finishingfunction($config,$session, $basket,$pobj) { // do something if (somethingwrong) return false; return true; } 14.03.08 TYPO3 Commerce 27

Einrichtung Commerce -> Categories -> SYSTEM -> PAYMENT -> new Article : newpaymenttype Price = 0 tx_commerce_articles -> classname = newpaymenttype 14.03.08 TYPO3 Commerce 28

Cross Selling TCA erweitern TCEMain HOOK processdatamap_preprocessfieldarray(& $fieldarray, $table, $id, &$pobj) Marker hinzufügen 14.03.08 TYPO3 Commerce 29

Persönlicher Ausblick Erweiterte Cross Selling Funktionalität Automatische Indextabelle für die Filter Anbindung an Google Analytics Conversion Ziele 14.03.08 TYPO3 Commerce 30

Diskussion Vielen Dank für Ihre Aufmerksamkeit! 14.03.08 TYPO3 Commerce 31