0
Introduction to the MagentoeCommerce PlatformEAAA ITDays October 2012Jarne W. Beutnageljwb@eaaa.dkwww.beutnagel.dk/itdays2...
PURPOSEGive a general introduction to Magento
“Introduce the system on theconceptual level and practical level   regarding administration and          development”
Overview1. What is Magento?2. Core Concepts3. Technical Overview
WHAT IS MAGENTO?Killer features and pitiful drawbacks
http://www.magentocommerce.com/
Powerful Open Source (read FREE)eCommerce System
The World’s Fastest GrowingeCommerce System
Owned by eBay
Started in the osCommercedevelopment community
Comes in three versions:Community, Enterprise & Go
Try it out online
Enterprise: http://www.magentocommerce.com/demoCommunity: http://demo.magentocommerce.com/
Killer Features  Multi store  Powerful price rules  SEO friendly  Flexible theming  Expandable through plugins  Huge Commu...
Downsides High server requirements (especially RAM) Can be difficult, at times illogical Weak Content Management Requires ...
DEMONSTRATIONBecause looking at slides is boring
CATEGORIESOrganizing products
Custom DesignIt is possible to apply a different design for a giventime period
Is AnchorAllows for layered navigation with attribute filtering
Warning: URLSAutomatic 301 redirects are set up for categoriesEach unique URL is limited for one time usageCan’t change an...
ATTRIBUTESControlling product information
Attribute setsDefines which information is available for a product
PRODUCT TYPESThe difference between them
1) Standalone Products
Simple ProductsA physical product with a single SKU
Virtual ProductsA non-physical product, e.g. warranty or service
Downloable ProductsA digital product that will be made available fordownload after purchase
2) Product Collections
Grouped ProductsA collection of simple products sold in a group
Configurable ProductsA single product that have configurable options,where each option represent a simple product
Bundle ProductsLets the customer build their own collection,selecting between simple products (e.g. gift basket)
SCOPEThe hierarchy and reach of settings
Different LevelsWebsites, Stores, Store ViewsGlobal/Default
WebsitesConsists of one or more stores that can sharecustomer dataOperates at the Business level
StoresContains the product catalogue and categoriesOperates at the Webshop level
Store ViewsContains the localization of a webshop, withtranslations and localized contentOperates at the localized level
Global / DefaultThis is the top level that is shared between allwebsitesOperates at the installation level
EMAILSRequires setup in several different places
How to setupAdmin    Add email addressesFiles    Download language packageEditor   Load template filesAdmin    Select temp...
TECHNICAL OVERVIEWDeveloping for Magento
The SpecsLAMP (recommended, but not required)PHP 5+ OOP     • Zend Framework     • PEAR     • Apache Solr PHP ClientJS    ...
MVC        Model View           Controller
Model            View                 ControllersBusiness Logic   Presentation Logic   Event ObserversFunctionality    The...
PLUGINS/MODULESExtending the functionality
Installation• Manual• Magento connect
ManualUpload files to serveClear cacheLog out of admin / log in again
Magento connectmagentocommerce.com/magento-connect/example:http://www.magentocommerce.com/magento-connect/catalogsearch/re...
ModulesConsist of• Configuration• Blocks (ala views)• Models• Controllers• Database schema
File StructureUnderstanding where to find what
Functionality/app/code/
/app/code/core/Core functionality developed by the Magento teamDO NOT TOUCH!
/app/code/community/Functionality developed by the open sourcecommunityDO NOT TOUCH!
/app/code/local/Local development files and installed modulesPlace your files here
Presentation/app/design/
/app/design/frontend/Root folder for all presentation files for the clientside
/app/design/frontend/base/All the basic hooks into the core functionality thatare 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 startbuilding on top of the existing files
The Design FallbackIf Magento can’t find a file in your them, it falls backto the base folder in the following order1. cus...
Localization/locale/
/locale/language_id/Within this folder are the translation files in csvformat and a folder for email templates
THE CACHEGeneral concept of performance optimazation
Cache storageSave the result of a calculation and serving it to thefollowing clientsA calculation only happens once
Example:A user requests a page from the server and Magentocalculates everything to display this page. Thisresult is then s...
Experiencing problems?Then flush!
THE INDEXKeeping 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 tablesThis leads to slow performance when gath...
The Solution?Create extra tables in the database where the datais store togetherServes as an abstraction, giving fast data...
Experiencing problems?Reindex solves 90% of them!
TranslationPossible 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 youwww.beutnagel.dk/itdays2012/
Upcoming SlideShare
Loading in...5
×

Introduction to the Magento eCommerce Platform

918

Published on

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.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
918
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
32
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "Introduction to the Magento eCommerce Platform"

  1. 1. Introduction to the MagentoeCommerce PlatformEAAA ITDays October 2012Jarne W. Beutnageljwb@eaaa.dkwww.beutnagel.dk/itdays2012/
  2. 2. PURPOSEGive a general introduction to Magento
  3. 3. “Introduce the system on theconceptual level and practical level regarding administration and development”
  4. 4. Overview1. What is Magento?2. Core Concepts3. Technical Overview
  5. 5. WHAT IS MAGENTO?Killer features and pitiful drawbacks
  6. 6. http://www.magentocommerce.com/
  7. 7. Powerful Open Source (read FREE)eCommerce System
  8. 8. The World’s Fastest GrowingeCommerce System
  9. 9. Owned by eBay
  10. 10. Started in the osCommercedevelopment community
  11. 11. Comes in three versions:Community, Enterprise & Go
  12. 12. Try it out online
  13. 13. Enterprise: http://www.magentocommerce.com/demoCommunity: http://demo.magentocommerce.com/
  14. 14. Killer Features Multi store Powerful price rules SEO friendly Flexible theming Expandable through plugins Huge Community
  15. 15. Downsides High server requirements (especially RAM) Can be difficult, at times illogical Weak Content Management Requires custom development Upgrading is not automatic
  16. 16. DEMONSTRATIONBecause looking at slides is boring
  17. 17. CATEGORIESOrganizing products
  18. 18. Custom DesignIt is possible to apply a different design for a giventime period
  19. 19. Is AnchorAllows for layered navigation with attribute filtering
  20. 20. Warning: URLSAutomatic 301 redirects are set up for categoriesEach unique URL is limited for one time usageCan’t change and then change back
  21. 21. ATTRIBUTESControlling product information
  22. 22. Attribute setsDefines which information is available for a product
  23. 23. PRODUCT TYPESThe difference between them
  24. 24. 1) Standalone Products
  25. 25. Simple ProductsA physical product with a single SKU
  26. 26. Virtual ProductsA non-physical product, e.g. warranty or service
  27. 27. Downloable ProductsA digital product that will be made available fordownload after purchase
  28. 28. 2) Product Collections
  29. 29. Grouped ProductsA collection of simple products sold in a group
  30. 30. Configurable ProductsA single product that have configurable options,where each option represent a simple product
  31. 31. Bundle ProductsLets the customer build their own collection,selecting between simple products (e.g. gift basket)
  32. 32. SCOPEThe hierarchy and reach of settings
  33. 33. Different LevelsWebsites, Stores, Store ViewsGlobal/Default
  34. 34. WebsitesConsists of one or more stores that can sharecustomer dataOperates at the Business level
  35. 35. StoresContains the product catalogue and categoriesOperates at the Webshop level
  36. 36. Store ViewsContains the localization of a webshop, withtranslations and localized contentOperates at the localized level
  37. 37. Global / DefaultThis is the top level that is shared between allwebsitesOperates at the installation level
  38. 38. EMAILSRequires setup in several different places
  39. 39. How to setupAdmin Add email addressesFiles Download language packageEditor Load template filesAdmin Select templates
  40. 40. TECHNICAL OVERVIEWDeveloping for Magento
  41. 41. The SpecsLAMP (recommended, but not required)PHP 5+ OOP • Zend Framework • PEAR • Apache Solr PHP ClientJS • Prototype, script.aculo.us & jQuery • TinyMCE
  42. 42. MVC Model View Controller
  43. 43. Model View ControllersBusiness Logic Presentation Logic Event ObserversFunctionality Themes RoutingData control Layouts Templates Skins Known as “Blocks”
  44. 44. PLUGINS/MODULESExtending the functionality
  45. 45. Installation• Manual• Magento connect
  46. 46. ManualUpload files to serveClear cacheLog out of admin / log in again
  47. 47. Magento connectmagentocommerce.com/magento-connect/example:http://www.magentocommerce.com/magento-connect/catalogsearch/result/?q=matrix+rates&pl=0
  48. 48. ModulesConsist of• Configuration• Blocks (ala views)• Models• Controllers• Database schema
  49. 49. File StructureUnderstanding where to find what
  50. 50. Functionality/app/code/
  51. 51. /app/code/core/Core functionality developed by the Magento teamDO NOT TOUCH!
  52. 52. /app/code/community/Functionality developed by the open sourcecommunityDO NOT TOUCH!
  53. 53. /app/code/local/Local development files and installed modulesPlace your files here
  54. 54. Presentation/app/design/
  55. 55. /app/design/frontend/Root folder for all presentation files for the clientside
  56. 56. /app/design/frontend/base/All the basic hooks into the core functionality thatare required by a theme
  57. 57. /app/design/frontend/default/Default themes – blank, default, iphone & modern
  58. 58. /app/design/frontend/yourtheme/Create a new folder for your own them and startbuilding on top of the existing files
  59. 59. The Design FallbackIf Magento can’t find a file in your them, it falls backto the base folder in the following order1. custom_package/custom_theme/2. custom_package/default/3. base/default/
  60. 60. Localization/locale/
  61. 61. /locale/language_id/Within this folder are the translation files in csvformat and a folder for email templates
  62. 62. THE CACHEGeneral concept of performance optimazation
  63. 63. Cache storageSave the result of a calculation and serving it to thefollowing clientsA calculation only happens once
  64. 64. Example:A user requests a page from the server and Magentocalculates everything to display this page. Thisresult is then saved so that the next user will get thesaved (cached) version instead of having Magentocalculate it again.
  65. 65. Experiencing problems?Then flush!
  66. 66. THE INDEXKeeping the database optimized
  67. 67. Why Index?The Magento database is HUGE!
  68. 68. Database
  69. 69. Why Index?The Magento database is HUGE!Data is spread out between different tables
  70. 70. Why Index?The Magento database is HUGE!Data is spread out between different tablesThis leads to slow performance when gathering datafrom many tables
  71. 71. The Solution?Create extra tables in the database where the datais store togetherServes as an abstraction, giving fast data responseOnly needs to be updated when something changesOnly the area of change needs update
  72. 72. Experiencing problems?Reindex solves 90% of them!
  73. 73. TranslationPossible to do from file or on the fly
  74. 74. Translation can be done by either:Adding a translation file (best)Translate Inline (easy)
  75. 75. Any Questions?
  76. 76. Thank youwww.beutnagel.dk/itdays2012/
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×