2. Next level e-commerce with MageBridge
Who am I?
• Jisse Reitsma
– Co-founder of Jira ICT (Dutch company)
– Co-founder of Yireo (www.yireo.com)
– Lead developer of MageBridge
– Author of Joomla! template designer
– Former VMware ESX trainer, UNIX
sysadmin, Linux trainer
– PHP-developer, system architect,
consultant, trainer
– Busy with Joomla!, Magento, … and
MageBridge
3. Next level e-commerce with MageBridge
Some of our customers
• Condoom-Anoniem
• Condomerie
• Porn king
• Mushroom shop
• Weed fertilizers
• Dreadlocks store
• Guns for sale
8. Next level e-commerce with MageBridge
Conclusion
• All solutions allow you to sell products
9. Next level e-commerce with MageBridge
Conclusion
• All solutions allow you to sell products …
• … so there must be differences besides “selling”
10. Next level e-commerce with MageBridge
Conclusion
• All solutions allow you to sell products …
• … so there must be differences besides “selling”
– Ease of use (GUI, features vs user friendliness)
– Extendability (plugins, cleanness of code, theming)
– Scalability (cloud computing, clustering, optimization)
– Number of shipment providers and payment gateways
– Tax calculation
– Connecting the back-office (CRM, ERP) in real-time
12. Next level e-commerce with MageBridge
MageBridge
• Developed by Yireo
– Other extensions: Vm2Mage, Dynamic404,
TweetScheduler, SSLRedirect, ScriptMerge
SimpleLists, SEFTest, Fancybox
– Tutorials on Joomla! and Magento
(performance, security, development)
• Integrates Magento into Joomla!
– Better CMS for Magento
– Better e-commerce for Joomla!
13. Next level e-commerce with MageBridge
How much does it cost?
• Not free beer
– Mid-market pricing
– Enterprise features
– Community-driven roadmap
• Packages available
– MageBridge Standard = 3 months, 2 domains, 95 Euro
– MageBridge Enterprise = 12 months, 6 domains, 195 Euro
– MageBridge Reseller / Partner = 12 months, ? domains, 1000 Euro
• SVN access available
– svn://svn.yireo.com/svn/development/magebridge
– Full sources available, but not in packaged form
– Upcoming: Phing scripts
14. Next level e-commerce with MageBridge
Bridge everything (1/3)
• Integrates Magento visually into Joomla!
– Main content-block within Joomla! component
– Any other Magento block within Joomla! modules
15. Next level e-commerce with MageBridge
Bridge everything (2/3)
• Integrates Magento visually into Joomla!
• Synchronizes Magento data with Joomla!
– Search products and categories
– User synchronization and authentication
– JCE editor
16. Next level e-commerce with MageBridge
Bridge everything (3/3)
• Integrates Magento visually into Joomla!
• Synchronizes Magento data with Joomla!
• Connecting Magento logic to Joomla!
– Product connectors, store connectors, profile connectors
19. Next level e-commerce with MageBridge
Combined theming
• Magento theme
– XML layout, PHTML templates, CSS skin
• Joomla! template
– Little PHP, jdoc-tags, CSS skin, MageBridgeTemplateHelper-class
Magento headers are merged into Joomla! <head>
– CSS, JavaScript (conflict!?)
– META-tags, title-tag, etcetera
• MageBridge-optimized template-patches
– RocketTheme
– JoomlArt
– YOOtheme
20. Next level e-commerce with MageBridge
JavaScript frameworks
• MooTools
– Used frequently by Joomla! extensions
• Prototype / Scriptaculous
– Used by almost all Magento core-functionality
• Use both of them and JavaScript crashes
– Conflicting namespace $ and conflicting classes
– jQuery.noConflict() is always fine
– Magento 2.0 will switch from Prototype to jQuery
– Yireo's effort?
21. Next level e-commerce with MageBridge
Practical benefit of MageBridge
• Joomla! is used as CMS-system
– Better WYSIWYG-editors
– Hierarchy of categories (and sections)
• Joomla! is used as site building tool
– Joomla! Menu Manager
– Joomla! templating
– Joomla! module management
– No need to touch Magento XML-layouts or PHTML-templates
• Magento is used for e-commerce
22. Next level e-commerce with MageBridge
MageBridge & Joomla! 1.6
• Basic compatibility
– Same PHP-codebase for both 1.5 as 1.6
– But different XML-files (basically parameters)
• Extra features
– ACLs for usage of backend
– Joomla! 1.6 Usergroups Store Connector
– Joomla! 1.6 Extensible Profiles Connector
– Joomla! 1.6 Usergroups Product Connector
– Backend-demo
23. Next level e-commerce with MageBridge
MageBridge Mobile
• Web-based instead of app-based
– CMS + shop in 1 one mobile site
– jQuery Mobile
– Get rid of ProtoType as much as we can
• Demo
– http://mobile.magebridge.com/
24. Next level e-commerce with MageBridge
MageBridge & other Yireo stuff
• MageBridge stuff
– MageBridge labs (Nooku, FLEXIcontent/K2/ZOO, secret labs)
– MageBridge Template Patches (RocketTheme, YOOtheme, JoomlArt)
• Other Yireo stuff
– MageBridge plugin for Xmap
– MageBridge plugin for Dynamic404
– Vm2Mage migration from VirtueMart to Magento
26. Next level e-commerce with MageBridge
MageBridge usage
• Basic usage
– Shop with products and blog
– Single product shop
• Advanced usage
– Multi-site environments
– Membership / club
– Software subscriptions
– Private sales
– Advanced marketing
27. Next level e-commerce with MageBridge
MageBridge Store connectors
• Use Joomla! logic to determine Magento store
• Examples:
– Multilingual integration (JoomFish, Nooku, m17n)
– Special Magento stores on specific days (Christmas catalog)
– Special Magento stores for specific users (Private Sales: Joomla! 1.6, NoixACL)
28. Next level e-commerce with MageBridge
MageBridge Product connectors
• Sell Joomla! logic in Magento
• Examples:
– Access control (Joomla! 1.6 ACLs, NoixACL, FLEXIaccess)
– Private downloads (DOCman, jDowloads, RSFiles)
– Memberships (OSEMSC, MageBridge itself)
– Newsletter subscription (Acajoom, Acymailing, ccNewsletter, etcetera)
– Other subscriptions (Agora, Eventlist, Kunena, RSEvents)
– User rewards (JomSocial Karma Points)
30. Next level e-commerce with MageBridge
Parsing content
• Magento content filters
– Add Magento CMS-tags to Joomla! content
• Joomla! Content Plugins
– Add Joomla! plugin-tags to Magento content
31. Next level e-commerce with MageBridge
One Single HTTP Request
• Only 1 initialization of Magento application
• Coding API
– Register request with MageBridgeModelRegister class
– Fetch response from MageBridgeModelBridge::build()
32. Next level e-commerce with MageBridge
MageBridge API
• Connection between Joomla! and Magento
– Based on HTTP
• Transport protocols
– From Joomla! to Magento (and back): JSON
– From Magento to Joomla! (and back): XML-RPC
33. Next level e-commerce with MageBridge
Event forwarding
• Magento events are forwarded to Joomla!
– Joomla! plugins of type “magento”
• Joomla! events are forwarded to Magento
– Magento modules with observer functions with prefix “joomla_”
35. Next level e-commerce with MageBridge
Magento API in Joomla!
• Integrate Magento logic into any Joomla! extension
– Template
– Component
– Module
– Plugin
• MageBridge tools
– autoloading classes (SPL)
– class MageBridgeTemplateHelper
36. Next level e-commerce with MageBridge
Three steps to get what you want
• Register what you want
– $register = MageBridgeModelRegister::getInstance();
– $id = $register->add('api', 'magebridge_user.save', $user);
• Build the bridge
– $bridge = MageBridgeModelBridge::getInstance();
– $bridge->build();
• Get what you want
– $data = $register->getById($id);
37. Next level e-commerce with MageBridge
Scalability
• Extensible architecture of MageBridge
– Modules, plugins, connectors
– Coding API (register, bridge, helpers)
• Magento as solid platform
– API connections with backoffice
– Clustering, optimization (10.000+ products)
38. Next level e-commerce with MageBridge
Performance (1/2)
• Inside MageBridge
– Minimal initialization of Magento framework
• Caching
– Magento caching, Joomla! caching
– MageBridge caching on the Magento side
– MageBridge caching on the Joomla! side
• Content loading
– Prototype / Scriptaculous > Protoaculous or Google API
39. Next level e-commerce with MageBridge
Performance (2/2)
• Extra tips for optimization
– Merging of CSS/JS files
– Caching within Joomla!
– Usage of tmpfs as filesystem
– Magento compilation
– Tuning of PHP parameters (f.i. realpath_cache_size)
– Tuning of MySQL parameters (f.i. query_cache)
– Usage of Litespeed or Nginx as webserver
– ...
http://yireo.com/spo
41. Next level e-commerce with MageBridge
MageBridge summary
• Visual integration, combined theming
• Components, modules, plugins
• Store connectors, product connectors
• Event forwarding
42. Next level e-commerce with MageBridge
More information on MageBridge
• yireo.com/magebridge
– Blogs on Joomla!, Magento and MageBridge
– Tutorials on Joomla!, Magento and MageBridge
– MageBridge demos, screenshots, FAQ
– Demo days