introduction to the magento ecommerce platform

76
EAAA ITDays October 2012 Jarne W. Beutnagel [email protected] www.beutnagel.dk/itdays2012/ Introduction to the Magento eCommerce Platform

Upload: jarne-w-beutnagel

Post on 29-Nov-2014

1.181 views

Category:

Technology


0 download

DESCRIPTION

Presentation for EAAA ITDays October 2012. Introducing the Magento eCommerce platform on conceptual level and the practical level, taking both administration and development into consideration.

TRANSCRIPT

Page 1: Introduction to the Magento eCommerce Platform

EAAA ITDays October 2012 Jarne W. Beutnagel

[email protected]

www.beutnagel.dk/itdays2012/

Introduction to the Magento eCommerce Platform

Page 2: Introduction to the Magento eCommerce Platform

PURPOSE Give a general introduction to Magento

Page 3: Introduction to the Magento eCommerce Platform

“Introduce the system on the conceptual level and practical level

regarding administration and development”

Page 4: Introduction to the Magento eCommerce Platform

1. What is Magento? 2. Core Concepts 3. Technical Overview

Overview

Page 5: Introduction to the Magento eCommerce Platform

WHAT IS MAGENTO? Killer features and pitiful drawbacks

Page 6: Introduction to the Magento eCommerce Platform

http://www.magentocommerce.com/

Page 7: Introduction to the Magento eCommerce Platform

Powerful Open Source (read FREE) eCommerce System

Page 8: Introduction to the Magento eCommerce Platform

The World’s Fastest Growing eCommerce System

Page 9: Introduction to the Magento eCommerce Platform

Owned by eBay

Page 10: Introduction to the Magento eCommerce Platform

Started in the osCommerce development community

Page 11: Introduction to the Magento eCommerce Platform

Comes in three versions: Community, Enterprise & Go

Page 12: Introduction to the Magento eCommerce Platform

Try it out online

Page 13: Introduction to the Magento eCommerce Platform

Enterprise: http://www.magentocommerce.com/demo Community: http://demo.magentocommerce.com/

Page 14: Introduction to the Magento eCommerce Platform

Multi store

Powerful price rules

SEO friendly

Flexible theming

Expandable through plugins

Huge Community

Killer Features

Page 15: Introduction to the Magento eCommerce Platform

High server requirements (especially RAM)

Can be difficult, at times illogical

Weak Content Management

Requires custom development

Upgrading is not automatic

Downsides

Page 16: Introduction to the Magento eCommerce Platform

DEMONSTRATION Because looking at slides is boring

Page 17: Introduction to the Magento eCommerce Platform

CATEGORIES Organizing products

Page 18: Introduction to the Magento eCommerce Platform

Custom Design It is possible to apply a different design for a given time period

Page 19: Introduction to the Magento eCommerce Platform

Is Anchor Allows for layered navigation with attribute filtering

Page 20: Introduction to the Magento eCommerce Platform

Warning: URLS Automatic 301 redirects are set up for categories Each unique URL is limited for one time usage Can’t change and then change back

Page 21: Introduction to the Magento eCommerce Platform

ATTRIBUTES Controlling product information

Page 22: Introduction to the Magento eCommerce Platform

Attribute sets Defines which information is available for a product

Page 23: Introduction to the Magento eCommerce Platform

PRODUCT TYPES The difference between them

Page 24: Introduction to the Magento eCommerce Platform

1) Standalone Products

Page 25: Introduction to the Magento eCommerce Platform

Simple Products A physical product with a single SKU

Page 26: Introduction to the Magento eCommerce Platform

Virtual Products A non-physical product, e.g. warranty or service

Page 27: Introduction to the Magento eCommerce Platform

Downloable Products A digital product that will be made available for download after purchase

Page 28: Introduction to the Magento eCommerce Platform

2) Product Collections

Page 29: Introduction to the Magento eCommerce Platform

Grouped Products A collection of simple products sold in a group

Page 30: Introduction to the Magento eCommerce Platform

Configurable Products A single product that have configurable options, where each option represent a simple product

Page 31: Introduction to the Magento eCommerce Platform

Bundle Products Lets the customer build their own collection, selecting between simple products (e.g. gift basket)

Page 32: Introduction to the Magento eCommerce Platform

SCOPE The hierarchy and reach of settings

Page 33: Introduction to the Magento eCommerce Platform

Different Levels Websites, Stores, Store Views Global/Default

Page 34: Introduction to the Magento eCommerce Platform

Websites Consists of one or more stores that can share customer data Operates at the Business level

Page 35: Introduction to the Magento eCommerce Platform

Stores Contains the product catalogue and categories Operates at the Webshop level

Page 36: Introduction to the Magento eCommerce Platform

Store Views Contains the localization of a webshop, with translations and localized content Operates at the localized level

Page 37: Introduction to the Magento eCommerce Platform

Global / Default This is the top level that is shared between all websites Operates at the installation level

Page 38: Introduction to the Magento eCommerce Platform

EMAILS Requires setup in several different places

Page 39: Introduction to the Magento eCommerce Platform

How to setup Admin Add email addresses Files Download language package Editor Load template files Admin Select templates

Page 40: Introduction to the Magento eCommerce Platform

TECHNICAL OVERVIEW Developing for Magento

Page 41: Introduction to the Magento eCommerce Platform

LAMP (recommended, but not required)

PHP 5+ OOP • Zend Framework • PEAR • Apache Solr PHP Client

JS • Prototype, script.aculo.us & jQuery • TinyMCE

The Specs

Page 42: Introduction to the Magento eCommerce Platform

Model

Controller View

MVC

Page 43: Introduction to the Magento eCommerce Platform

Model Business Logic

Functionality

Data control

View Presentation Logic

Themes

Layouts

Templates

Skins

Known as “Blocks”

Controllers Event Observers

Routing

Page 44: Introduction to the Magento eCommerce Platform

PLUGINS/MODULES Extending the functionality

Page 45: Introduction to the Magento eCommerce Platform

• Manual • Magento connect

Installation

Page 46: Introduction to the Magento eCommerce Platform

Upload files to serve Clear cache Log out of admin / log in again

Manual

Page 48: Introduction to the Magento eCommerce Platform

Consist of • Configuration • Blocks (ala views) • Models • Controllers • Database schema

Modules

Page 49: Introduction to the Magento eCommerce Platform

File Structure Understanding where to find what

Page 50: Introduction to the Magento eCommerce Platform

/app/code/ Functionality

Page 51: Introduction to the Magento eCommerce Platform

/app/code/core/ Core functionality developed by the Magento team DO NOT TOUCH!

Page 52: Introduction to the Magento eCommerce Platform

/app/code/community/ Functionality developed by the open source community DO NOT TOUCH!

Page 53: Introduction to the Magento eCommerce Platform

/app/code/local/ Local development files and installed modules Place your files here

Page 54: Introduction to the Magento eCommerce Platform

/app/design/ Presentation

Page 55: Introduction to the Magento eCommerce Platform

/app/design/frontend/ Root folder for all presentation files for the client side

Page 56: Introduction to the Magento eCommerce Platform

/app/design/frontend/base/ All the basic hooks into the core functionality that are required by a theme

Page 57: Introduction to the Magento eCommerce Platform

/app/design/frontend/default/ Default themes – blank, default, iphone & modern

Page 58: Introduction to the Magento eCommerce Platform

/app/design/frontend/yourtheme/ Create a new folder for your own them and start building on top of the existing files

Page 59: Introduction to the Magento eCommerce Platform

The Design Fallback If Magento can’t find a file in your them, it falls back to the base folder in the following order 1. custom_package/custom_theme/ 2. custom_package/default/ 3. base/default/

Page 60: Introduction to the Magento eCommerce Platform

/locale/ Localization

Page 61: Introduction to the Magento eCommerce Platform

/locale/language_id/ Within this folder are the translation files in csv format and a folder for email templates

Page 62: Introduction to the Magento eCommerce Platform

THE CACHE General concept of performance optimazation

Page 63: Introduction to the Magento eCommerce Platform

Cache storage Save the result of a calculation and serving it to the following clients A calculation only happens once

Page 64: Introduction to the Magento eCommerce Platform

Example: A user requests a page from the server and Magento calculates everything to display this page. This result is then saved so that the next user will get the saved (cached) version instead of having Magento calculate it again.

Page 65: Introduction to the Magento eCommerce Platform

Experiencing problems? Then flush!

Page 66: Introduction to the Magento eCommerce Platform

THE INDEX Keeping the database optimized

Page 67: Introduction to the Magento eCommerce Platform

Why Index? The Magento database is HUGE!

Page 68: Introduction to the Magento eCommerce Platform

Database

Page 69: Introduction to the Magento eCommerce Platform

Why Index? The Magento database is HUGE! Data is spread out between different tables

Page 70: Introduction to the Magento eCommerce Platform

Why Index? The Magento database is HUGE! Data is spread out between different tables This leads to slow performance when gathering data from many tables

Page 71: Introduction to the Magento eCommerce Platform

The Solution? Create extra tables in the database where the data is store together Serves as an abstraction, giving fast data response Only needs to be updated when something changes Only the area of change needs update

Page 72: Introduction to the Magento eCommerce Platform

Experiencing problems? Reindex solves 90% of them!

Page 73: Introduction to the Magento eCommerce Platform

Translation Possible to do from file or on the fly

Page 74: Introduction to the Magento eCommerce Platform

Translation can be done by either: Adding a translation file (best) Translate Inline (easy)

Page 75: Introduction to the Magento eCommerce Platform

Any Questions?

Page 76: Introduction to the Magento eCommerce Platform

Thank you www.beutnagel.dk/itdays2012/