SlideShare a Scribd company logo
1 of 29
Download to read offline
ОСТАТЬСЯ В ЖИВЫХ
                        или как выжить на платформе Magento




                                 Петр Самойлов



среда, 20 июня 12 г.
ОБНОВЛЕНИЯ MAGENTO




среда, 20 июня 12 г.
Magento CE (на май 2012)
                                                                 300


                                                                 257

                                                             214

                                                             171

                                                            129

                                                            86

                                                        43
                       1.3
                             1.4
                                   1.5                  0
                                          1.6
                                                 1.7


среда, 20 июня 12 г.
Magento EE (на май 2012)
                                                                  30

                                                                 26

                                                                21

                                                                17

                                                            13

                                                            9

                                                        4
                       1.8
                             1.9
                                   1.10                 0
                                          1.11
                                                 1.12


среда, 20 июня 12 г.
ПОЧЕМУ?

              • Новые инсталляции
              • Новая версия!
              • Необходимый функционал
              • Скорость работы
              • Безопасность
              • Go Enterprise!

         Рано или поздно любая Magento апгрейдится
среда, 20 июня 12 г.
ЧТО МЕНЯЕТСЯ?


         Структуры данных                   Шаблоны




                            Бизнес-логика


среда, 20 июня 12 г.
ДАННЫЕ



      • Свои данные - в свои таблицы
      • Никаких прямых запросов
      • Не трогать ресурсные модели


среда, 20 июня 12 г.
БИЗНЕС-ЛОГИКА


           • Минимум реврайтов
           • Не реврайтить «слонов»!




среда, 20 июня 12 г.
СЛОНЫ

                       core/*
                                 sales/order
                                 sales/quote
                                               catalog/product
                                               catalog/category




среда, 20 июня 12 г.
БИЗНЕС-ЛОГИКА


           • Минимум реврайтов
           • Не реврайтить «слонов»!
           • Прицел на события




среда, 20 июня 12 г.
catalog_product_is_salable_before           application_clean_cache



                                          core_block_abstract_to_html_before
    core_collection_abstract_load_after


                       customer_login         model_load_after


  core_layout_update_updates_get_after             core_robot_win_after


                                                  model_save_after
     http_response_send_before

                                               controller_action_predispatch
        resource_get_tablename

                                                model_delete_after
   checkout_cart_product_add_after




среда, 20 июня 12 г.
БИЗНЕС-ЛОГИКА


           • Минимум реврайтов
           • Не реврайтить «слонов»!
           • Прицел на события
           • Свой тип продукта!



среда, 20 июня 12 г.
ШАБЛОНЫ, СКИНЫ


           • default/default




среда, 20 июня 12 г.
DESIGN FALLBACK
                       До 1.4
                   •app/design/frontend/default/default
                   •skin/frontend/default/default
                          Большинство тем на рынке - в
                       После 1.4    default!
                       •app/design/frontend/base/default
                       •skin/frontend/base/default


среда, 20 июня 12 г.
ШАБЛОНЫ, СКИНЫ


           • default/default
           • хаки для blank, modern




среда, 20 июня 12 г.
КАСТОМИЗАЦИИ



             По месту!               Модулем
                           В local




среда, 20 июня 12 г.
local   community   core




                               ПУЛЫ
среда, 20 июня 12 г.
ДРАМА ОЧЕРЕДНОСТИ

                       • Сторонний модуль грузится после нас
                       • Его реврайты приоритетнее
                       • Он последний в layout update
                       • За его событиями последнее слово




среда, 20 июня 12 г.
КАК БЫТЬ?




среда, 20 июня 12 г.
Mage_*.xml

                                             Я-первый!

                           00My_Custom.xml



                            My_Custom.xml



                       APP/ETC/MODULES
среда, 20 июня 12 г.
DEPENDS




          • Приоритет   rewrite, событий
          • Приоритет   layout update

среда, 20 июня 12 г.
СОВМЕСТИМОСТЬ
    • depends
                                      class A             class B
    • Условное         наследование


                                                class C



                                                class D



среда, 20 июня 12 г.
СОВМЕСТИМОСТЬ
    • depends
                                      class A             class B
    • Условное         наследование


                                                class C



                                                class D



среда, 20 июня 12 г.
ЧТО ЕЩЕ?




среда, 20 июня 12 г.
МА-А-АЛЕНЬКАЯ ТЕЛЕЖКА



        • +100Kb       без плагинов
        • Google Analytics
        • Конфликты       с prototype




среда, 20 июня 12 г.
ИНЪЕКЦИИ
       To Inject: Open up the file /design/frontend/[your package]/
       [your theme]/template/catalog/product/list.phtml




среда, 20 июня 12 г.
КЭШ БЛОКОВ




                       Это же чертовски просто!


среда, 20 июня 12 г.
КНИЖКА
среда, 20 июня 12 г.
Петр Самойлов

  Email: samoilov@aheadworks.com
  Skype: p.samoilov
  FB: http://www.facebook.com/peter.samoilov.5
среда, 20 июня 12 г.

More Related Content

More from aheadWorks

Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...
Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...
Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...aheadWorks
 
Guiding rules for choosing a reliable Magento development partner
Guiding rules for choosing a reliable Magento development partnerGuiding rules for choosing a reliable Magento development partner
Guiding rules for choosing a reliable Magento development partneraheadWorks
 
Пять кейсов из практики aheadWorks с прологом и эпилогом
Пять кейсов из практики aheadWorks с прологом и эпилогомПять кейсов из практики aheadWorks с прологом и эпилогом
Пять кейсов из практики aheadWorks с прологом и эпилогомaheadWorks
 
Developing trusted Magento extension
Developing trusted Magento extension Developing trusted Magento extension
Developing trusted Magento extension aheadWorks
 
Magento integration
Magento integrationMagento integration
Magento integrationaheadWorks
 
Top 10 problems supporting Magento customers
Top 10 problems supporting Magento customersTop 10 problems supporting Magento customers
Top 10 problems supporting Magento customersaheadWorks
 
Magento Meetup Belarus 2012 opening
Magento Meetup Belarus 2012 opening Magento Meetup Belarus 2012 opening
Magento Meetup Belarus 2012 opening aheadWorks
 
Magento code debugging
Magento code debuggingMagento code debugging
Magento code debuggingaheadWorks
 
Magento Test Automation Framework
Magento Test Automation FrameworkMagento Test Automation Framework
Magento Test Automation FrameworkaheadWorks
 
How to Use Email Marketing More Effectively
How to Use Email Marketing More EffectivelyHow to Use Email Marketing More Effectively
How to Use Email Marketing More EffectivelyaheadWorks
 
Феномен IT-менеджера
Феномен IT-менеджераФеномен IT-менеджера
Феномен IT-менеджераaheadWorks
 
Email marketing для IT-стартапов
Email marketing для IT-стартаповEmail marketing для IT-стартапов
Email marketing для IT-стартаповaheadWorks
 
Первые шаги бизнеса
Первые шаги бизнесаПервые шаги бизнеса
Первые шаги бизнесаaheadWorks
 
Заставьте их покупать!
Заставьте их покупать!Заставьте их покупать!
Заставьте их покупать!aheadWorks
 

More from aheadWorks (14)

Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...
Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...
Moving from Projects to Products: How Newcomers Can Do as Good as Veterans of...
 
Guiding rules for choosing a reliable Magento development partner
Guiding rules for choosing a reliable Magento development partnerGuiding rules for choosing a reliable Magento development partner
Guiding rules for choosing a reliable Magento development partner
 
Пять кейсов из практики aheadWorks с прологом и эпилогом
Пять кейсов из практики aheadWorks с прологом и эпилогомПять кейсов из практики aheadWorks с прологом и эпилогом
Пять кейсов из практики aheadWorks с прологом и эпилогом
 
Developing trusted Magento extension
Developing trusted Magento extension Developing trusted Magento extension
Developing trusted Magento extension
 
Magento integration
Magento integrationMagento integration
Magento integration
 
Top 10 problems supporting Magento customers
Top 10 problems supporting Magento customersTop 10 problems supporting Magento customers
Top 10 problems supporting Magento customers
 
Magento Meetup Belarus 2012 opening
Magento Meetup Belarus 2012 opening Magento Meetup Belarus 2012 opening
Magento Meetup Belarus 2012 opening
 
Magento code debugging
Magento code debuggingMagento code debugging
Magento code debugging
 
Magento Test Automation Framework
Magento Test Automation FrameworkMagento Test Automation Framework
Magento Test Automation Framework
 
How to Use Email Marketing More Effectively
How to Use Email Marketing More EffectivelyHow to Use Email Marketing More Effectively
How to Use Email Marketing More Effectively
 
Феномен IT-менеджера
Феномен IT-менеджераФеномен IT-менеджера
Феномен IT-менеджера
 
Email marketing для IT-стартапов
Email marketing для IT-стартаповEmail marketing для IT-стартапов
Email marketing для IT-стартапов
 
Первые шаги бизнеса
Первые шаги бизнесаПервые шаги бизнеса
Первые шаги бизнеса
 
Заставьте их покупать!
Заставьте их покупать!Заставьте их покупать!
Заставьте их покупать!
 

How to survive on Magento platform

  • 1. ОСТАТЬСЯ В ЖИВЫХ или как выжить на платформе Magento Петр Самойлов среда, 20 июня 12 г.
  • 3. Magento CE (на май 2012) 300 257 214 171 129 86 43 1.3 1.4 1.5 0 1.6 1.7 среда, 20 июня 12 г.
  • 4. Magento EE (на май 2012) 30 26 21 17 13 9 4 1.8 1.9 1.10 0 1.11 1.12 среда, 20 июня 12 г.
  • 5. ПОЧЕМУ? • Новые инсталляции • Новая версия! • Необходимый функционал • Скорость работы • Безопасность • Go Enterprise! Рано или поздно любая Magento апгрейдится среда, 20 июня 12 г.
  • 6. ЧТО МЕНЯЕТСЯ? Структуры данных Шаблоны Бизнес-логика среда, 20 июня 12 г.
  • 7. ДАННЫЕ • Свои данные - в свои таблицы • Никаких прямых запросов • Не трогать ресурсные модели среда, 20 июня 12 г.
  • 8. БИЗНЕС-ЛОГИКА • Минимум реврайтов • Не реврайтить «слонов»! среда, 20 июня 12 г.
  • 9. СЛОНЫ core/* sales/order sales/quote catalog/product catalog/category среда, 20 июня 12 г.
  • 10. БИЗНЕС-ЛОГИКА • Минимум реврайтов • Не реврайтить «слонов»! • Прицел на события среда, 20 июня 12 г.
  • 11. catalog_product_is_salable_before application_clean_cache core_block_abstract_to_html_before core_collection_abstract_load_after customer_login model_load_after core_layout_update_updates_get_after core_robot_win_after model_save_after http_response_send_before controller_action_predispatch resource_get_tablename model_delete_after checkout_cart_product_add_after среда, 20 июня 12 г.
  • 12. БИЗНЕС-ЛОГИКА • Минимум реврайтов • Не реврайтить «слонов»! • Прицел на события • Свой тип продукта! среда, 20 июня 12 г.
  • 13. ШАБЛОНЫ, СКИНЫ • default/default среда, 20 июня 12 г.
  • 14. DESIGN FALLBACK До 1.4 •app/design/frontend/default/default •skin/frontend/default/default Большинство тем на рынке - в После 1.4 default! •app/design/frontend/base/default •skin/frontend/base/default среда, 20 июня 12 г.
  • 15. ШАБЛОНЫ, СКИНЫ • default/default • хаки для blank, modern среда, 20 июня 12 г.
  • 16. КАСТОМИЗАЦИИ По месту! Модулем В local среда, 20 июня 12 г.
  • 17. local community core ПУЛЫ среда, 20 июня 12 г.
  • 18. ДРАМА ОЧЕРЕДНОСТИ • Сторонний модуль грузится после нас • Его реврайты приоритетнее • Он последний в layout update • За его событиями последнее слово среда, 20 июня 12 г.
  • 20. Mage_*.xml Я-первый! 00My_Custom.xml My_Custom.xml APP/ETC/MODULES среда, 20 июня 12 г.
  • 21. DEPENDS • Приоритет rewrite, событий • Приоритет layout update среда, 20 июня 12 г.
  • 22. СОВМЕСТИМОСТЬ • depends class A class B • Условное наследование class C class D среда, 20 июня 12 г.
  • 23. СОВМЕСТИМОСТЬ • depends class A class B • Условное наследование class C class D среда, 20 июня 12 г.
  • 24. ЧТО ЕЩЕ? среда, 20 июня 12 г.
  • 25. МА-А-АЛЕНЬКАЯ ТЕЛЕЖКА • +100Kb без плагинов • Google Analytics • Конфликты с prototype среда, 20 июня 12 г.
  • 26. ИНЪЕКЦИИ To Inject: Open up the file /design/frontend/[your package]/ [your theme]/template/catalog/product/list.phtml среда, 20 июня 12 г.
  • 27. КЭШ БЛОКОВ Это же чертовски просто! среда, 20 июня 12 г.
  • 29. Петр Самойлов Email: samoilov@aheadworks.com Skype: p.samoilov FB: http://www.facebook.com/peter.samoilov.5 среда, 20 июня 12 г.