introduction to the magento ecommerce platform

Post on 29-Nov-2014

1.181 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

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

EAAA ITDays October 2012 Jarne W. Beutnagel

jwb@eaaa.dk

www.beutnagel.dk/itdays2012/

Introduction to the Magento eCommerce Platform

PURPOSE Give a general introduction to Magento

“Introduce the system on the conceptual level and practical level

regarding administration and development”

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

Overview

WHAT IS MAGENTO? Killer features and pitiful drawbacks

http://www.magentocommerce.com/

Powerful Open Source (read FREE) eCommerce System

The World’s Fastest Growing eCommerce System

Owned by eBay

Started in the osCommerce development community

Comes in three versions: Community, Enterprise & Go

Try it out online

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

Multi store

Powerful price rules

SEO friendly

Flexible theming

Expandable through plugins

Huge Community

Killer Features

High server requirements (especially RAM)

Can be difficult, at times illogical

Weak Content Management

Requires custom development

Upgrading is not automatic

Downsides

DEMONSTRATION Because looking at slides is boring

CATEGORIES Organizing products

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

Is Anchor Allows for layered navigation with attribute filtering

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

ATTRIBUTES Controlling product information

Attribute sets Defines which information is available for a product

PRODUCT TYPES The difference between them

1) Standalone Products

Simple Products A physical product with a single SKU

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

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

2) Product Collections

Grouped Products A collection of simple products sold in a group

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

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

SCOPE The hierarchy and reach of settings

Different Levels Websites, Stores, Store Views Global/Default

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

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

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

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

EMAILS Requires setup in several different places

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

TECHNICAL OVERVIEW Developing for Magento

LAMP (recommended, but not required)

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

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

The Specs

Model

Controller View

MVC

Model Business Logic

Functionality

Data control

View Presentation Logic

Themes

Layouts

Templates

Skins

Known as “Blocks”

Controllers Event Observers

Routing

PLUGINS/MODULES Extending the functionality

• Manual • Magento connect

Installation

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

Manual

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

Modules

File Structure Understanding where to find what

/app/code/ Functionality

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

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

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

/app/design/ Presentation

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

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

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

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

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/

/locale/ Localization

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

THE CACHE General concept of performance optimazation

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

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.

Experiencing problems? Then flush!

THE INDEX Keeping the database optimized

Why Index? The Magento database is HUGE!

Database

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

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

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

Experiencing problems? Reindex solves 90% of them!

Translation Possible to do from file or on the fly

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

Any Questions?

Thank you www.beutnagel.dk/itdays2012/

top related