Your SlideShare is downloading. ×
  • Like
Integrating Magento into Joomla!
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Integrating Magento into Joomla!


Presentation on how to integrate Magento into Joomla!, made for the Joomla!Days 2011 Netherlands. A fair comparison between JFusion, JMint and MageBridge.

Presentation on how to integrate Magento into Joomla!, made for the Joomla!Days 2011 Netherlands. A fair comparison between JFusion, JMint and MageBridge.

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Mogent: Mobile ready Magento template

    Mogent is responsive Magento template packaged with quick starter sample data and responsive theme. It is fully responsive template, has Eight color variations in style, Mobile optimized Magento product pages and cart, more then 20 Module positions and mobile optimized slideshow & menu.
    Are you sure you want to
    Your message goes here
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Joomla! vs MagentoMoogla?
  • 2. Joomla! vs MagentoMoogla• Joomla! – Most popular open-source CMS – Community-driven – User-friendly; easy architecture• Magento – Most popular open-source e-commerce system – Created by company Varien – Flexible; complicated architecture
  • 3. Joomla! vs MagentoMagento is hot
  • 4. Joomla! vs MagentoMagento is hot• Fast growth – Rapid development of new features – Quick adaption of market (because there is no good alternative?) – Buzz
  • 5. Joomla! vs MagentoWhy Magento?• Highly configurable • Numerous payment gateways and other modules • All HTML can be modified• Cool frontend features • Layered Navigation (or “Shop by ...”) • One Page Checkout• Never a need for core-hacks • Parent/child theming • Class overrides • Observable events
  • 6. Joomla! vs MagentoSerious e-commerce features• Catalog features • Product comparison • Shop by color / manufacturer / price / ... • Reviews, rating, wishlists • Upselling, cross-selling, gift-certificates• Ordering features • Multiple shipping addresses • One Page Checkout • Multicurrency, multicountry, multisite, multistore, multilingual • Online order-reviewing by admins• Backend features • Export / import functionality • APIs for connecting to 3rd party ERP / CRM / bookkeeping
  • 7. Joomla! vs MagentoMagento is for big shops• Higher costs • Full implementation easily takes 50 hours of an expert • Cheap shared hosting doesnt work • Majority of Magento extensions is commercial• Flexibility in favor of user-friendliness • XML layouts in Magento theming • MVC-usage and observer/observables • Clustering capabilities, advanced caching• Only worth it, if you want to earn money
  • 8. Joomla! vs MagentoIntegrating Magento and Joomla! (1)• Magento inside Joomla! – JFusion – JMint – MageBridge• Joomla! inside Magento – JFusion (partially) – MageBridge (partially)
  • 9. Joomla! vs MagentoIntegrating Magento and Joomla! (2)• Common technologies – Integration over HTTP • JFusion: HTML webpage • JMint: HTML webpage / SOAP • MageBridge: JSON-RPC / custom API – Configuration of webservice • API user • API role – Visual integration or not • IFRAME or integrated through API • Magento blocks reused in Joomla! • Other integrations (search, breadcrumbs)
  • 10. Joomla! vs MagentoSolution 1: No integration
  • 11. Joomla! vs MagentoNo integration• Keep Joomla! separate from Magento • No performance loss due to bridging • Building a Magento shop is made neither simple or difficult • No extra benefits from integration (because there is none) • Theming used to optimize
  • 12. Joomla! vs MagentoSolution 2: JFusion
  • 13. Joomla! vs MagentoWhat is JFusion?• Open-source project• Latest release 1.5.5 (February 2011)• Focussed on user-authentication and user-sync • Magento, phpBB, WordPress, SMF, vBulletin, Moodle, Gallery2
  • 14. Joomla! vs MagentoJFusion architecture• Parsing of Magento-generated HTML – HTML-blocks are extracted (for instance login-form) – Form is submitted to Magento – No API, no Magento extension• Managing user records – User synchronization (pull from Joomla!) – Single Sign On between applications• Joomla! requires access to Magento filesystem
  • 15. Joomla! vs MagentoJFusion configuration on multiple levels
  • 16. Joomla! vs MagentoJFusion packages• Component (1 total) • com_jfusion• Plugins (6 total) • User, Authentication, System Search, Content • Magelib• Modules (13 total) • mod_magecustomblock • mod_mageselectblock • mod_whosonline • mod_login • mod_user_activity
  • 17. Joomla! vs MagentoMagento inside IFRAME
  • 18. Joomla! vs MagentoJFusion Magelib plugin• Load Magento classes inside Joomla! code – Initialize Magento application (partially) – Call upon any Magento class within Joomla! extensions • Magento blocks built-in Joomla! • Checkout using Joomla! component • Joomla! plugins reacting on Magento events• Code • Hack of app/Mage.php to prevent redefinition of DS constant • Hack of app/code/core/Mage/Core/functions.php to add __autoload() conditionally • $plg = new plgSystemMagelib(); $plg->loadAndStartMagentoBootstrap(); $customer = Mage::getModel(customer/customer);
  • 19. Joomla! vs MagentoSolution 3: JMint
  • 20. Joomla! vs MagentoWhat is JMint?• Created by Anh Nguyen• Google Summer of Code 2009 Project• Latest version 1.0 in August 2009
  • 21. Joomla! vs MagentoJMint architecture• Parsing of Magento-generated HTML – HTML-blocks are extracted – Use Firebug to identify DOM ID – URLs are dynamically replaced (Magento-to-Joomla!-URL)• SOAP API – User synchronization (pull from Joomla!)
  • 22. Joomla! vs MagentoGuru configuration• Modify PHP-code of Joomla! class-file
  • 23. Joomla! vs MagentoJMint packages• Component • com_jmint• Plugins • JMint User Plugin • JMint Authentication Plugin• Modules • mod_jmint_content • mod_jmint_head• Templates • Magento lookalike
  • 24. Joomla! vs MagentoComponent: User synchronization
  • 25. Joomla! vs MagentoModule “mod_jmint_content”• Any HTML-identifier (“CSS selector”) can be used• Built-in caching
  • 26. Joomla! vs Magento
  • 27. Joomla! vs MagentoSolution 4: MageBridge
  • 28. Joomla! vs MagentoWhat is MageBridge?• Created by Yireo• Commercial package, free SVN-access• Latest major version 1.6 in February 2011
  • 29. Joomla! vs MagentoMageBridge architecture• JSON / JSON-RPC API – All API-requests in one single HTTP-request – HTML-blocks combined with API-data – No usage of stand-alone Magento frontend• Extra features – “Easier” setup and checks – Menu-Items with Lightbox-popups – JCE integration – Template-patches to make Magento / Joomla! combo easier
  • 30. Joomla! vs MagentoMaeBridge packages• Component (1 total) • com_magebridge• Plugins (10 total) • User, Authentication, System, Content • Search, Magento, MageBridge• Modules (13 total) • mod_magebridge_block • mod_magebridge_menu • mod_magebridge_products• Connectors (29 total) • Specific MageBridge plugins• Templates (1 total) • Magento lookalike
  • 31. Joomla! vs MagentoFrontend integration
  • 32. Joomla! vs MagentoCreating Menu-Items
  • 33. Joomla! vs MagentoMageBridge Magelib plugin• Load Magento classes inside Joomla! code – Initialize Magento application (partially) – Call upon any Magento class within Joomla! extensions • Magento blocks built-in Joomla! • Checkout using Joomla! component • Joomla! plugins reacting on Magento events• Code • No hacks • Works only under Joomla! 1.6 • Autoloading all classes when plugin is activated $customer = Mage::getModel(customer/customer);
  • 34. Joomla! vs MagentoComparison
  • 35. Joomla! vs MagentoComparison (1): General JFusion JMint MageBridge Type Free Free Commercial License GPL GPL / OSL GPL / OSL Joomla! 1.5 compatible Yes Yes Yes Joomla! 1.6 compatible Yes No Yes Configuration Backend PHP-class Backend Joomla! ext ension(s) Yes Yes Yes Magent o extension(s) No Yes Yes Ease-of-setup Difficult Xtra difficult Fairly difficult Documentation Yes Yes Yes
  • 36. Joomla! vs MagentoComparison (2): Users JFusion JMint MageBridge Authentication from J to M Yes Yes Yes Authentication from M to J No (#1) No Yes User synchronization Yes (auto) Yes (manually) Yes Usergroup synchronization No Yes Yes (partially) Single Sign In (integrated) Yes Yes Yes Single Sign On (separate apps) Yes No Yes Password synchronization Yes No Yes Shadow Joomla! users (#2) Yes (optionally) No Yes (optionally) #1: JFusion assumes integration of Magento into Joomla! (to my knowledge) #2: In other words: Users with an empty password, that require remote authentication
  • 37. Joomla! vs MagentoComparison (3): Visual integration JFusion JMint MageBridge Visual integration IFRAME (#1) Int egrated Int egrated Magent o blocks Yes Yes Yes Search plugin Yes No Yes Menu-Items No No Yes Breadcrumbs No No Yes Extra modules (cart, product s) No No Yes Hacks in Joomla! core No Yes (#2) No #1: JFusion 2.0 will introduce “Frameless Integration” of Magento #2: This could have been done through a simple System Plugin instead
  • 38. Joomla! vs MagentoComparison (4): Advanced JFusion JMint MageBridge Output caching No Yes Yes Database integration Yes (partially) No No Support for multisite Yes No Yes Backend int egration No Yes Yes Full Magent o bootstrap Yes Yes No HTTP requests Multiple Single Single Install in same directory Yes No No
  • 39. Joomla! vs MagentoComparison (5): Extras JFusion JMint MageBridge JCE integration No No Yes Multilingual int egration Yes (#1) No Yes (#2) Magent o code inside Joomla! Yes (#3) No Yes (#4) Joomla! after-sales actions No No Yes ACLs to apply private sales No No Yes #1: JoomFish #2: JoomFish, Nooku Content, m17n #3: Requires some small core-hacks inside Magento code #4: Only works with Joomla! 1.6
  • 40. Joomla! vs MagentoQuestions?