Your SlideShare is downloading. ×
0
Salesforce + CMS Integration: Plone vs Drupal vs Joomla!Christopher JohnsonCofounder and CEO, ifPeoplecjj@ifpeople.netwww....
Todays AgendaIntroduction & Getting to Know AudienceIntro to Each CMS and Integration  Plone  Drupal  JoomlaSide-by-side C...
1%          Time          Equity          Product                    241,000+ hours                    community service  ...
Before we start...2010 Comparing Open Source Content  Management Systems: WordPress, Joomla,  Drupal and PloneFree report ...
Integrating Plone and Salesforce Christopher Johnson Cofounder and CEO, ifPeople cjj@ifpeople.net www.ifpeople.net
Plone Vocabulary    Product: add on packages    Egg: a way products are packaged    Buildout: configuration file that b...
Plone Overview   User-friendly, intuitive interface   Proven: Released 2001, top 2% of Open Source projects   Best Secu...
Plone – Salesforce Integration    Started in 2006                Sponsored by Salesforce Foundation grant    Released i...
Plone – Salesforce Integration
Plone – Salesforce Tools Today   •       Web-to-x Forms   •       Events RSVP   •       Payments (form and shopping cart) ...
Plone – Salesforce Adv Integration    Directories and mashups (Google Maps)    Member profile updating    Permissions i...
Organizations Using Integrations                               Center for Economic Progress,    New Global Citizens,     ...
Plone-Salesforce Resources         Full demo slides and case studies:                http://bit.ly/plone-sfProduct Documen...
SALESFORCE SUITE:Integrating Salesforce and Drupal
About Drupal• Proven   – Open source CMS first released in 2001• Extensible, Complex, and Flexible   – Extended by thousan...
Drupal Vocabulary• Core  – Drupal’s framework and default installation• Module (contribs)  – Contributed plug-ins that add...
Salesforce Suite: History•   Current version: 2.X for Drupal 6.X•   Actively Maintained since 2007•   203 Installs and gro...
Salesforce Suite: Overview• Framework  –   Bi-Directional  –   Real-Time and Cached Data  –   Extensible: Expose any field...
Salesforce Suite: FeaturesWhat’s So Cool About It?•   Default fieldmaps•   Duplicate record prevention & Prematching•   Se...
Salesforce Suite: FeaturesPlanned for 2011•   Many-to-many object relationships•   Failure Handling•   Two-way synch rules...
Advanced Use Cases•   Membership Management/Directories•   Course Registration and E-Learning Environments•   Volunteer Re...
Salesforce Suite: Clients• Pennsylvania Legal Aid Network  http://palegalaid.net• Institute for Conservation Leadership  h...
More infoSalesforce Suitehttp://drupal.org/project/salesforceHow To: http://drupal.org/node/1033964Others:http://drupal.or...
Joomla + Salesforce.com          NTEN Webinar         February 25, 2011      Ryan Ozimek - @cozimek
Intro to Joomla!•    Long-term history     –         Open source CMS first released in 2000 (called Mambo back then)•    U...
Joomla! Vocabulary•    Components    –        Applications that run in the CMS•    Modules    –        View of content aro...
History of J!Salesforce•    Started back in 2006 by PICnet•    Revived in 2009•    Significant reinvestment in 2010-2011• ...
Reusable parts•    Components    –        J!Salesforce Submit    –        J!Salesforce Search    –        (your third part...
How this all works•    All real-time data exchanges between SF.com    and Joomla•    Basic form submission and search core...
InstallationRyan Ozimek - @cozimek
Online Forms           links
Submit Form Data to Salesforce    Case: any information collection that maps to one    or more objects in Salesforce (con...
Create a New Form
Create a New Form
Configure New Form
Default Form
Easy to Add Custom Fields
Edit Custom Fields
Many Data Validators Available
Drag-n-Drop Form Editor
Completed Form
Add Salesforce Adapter
Name The Adapter
Choose from Any SF Object
Map Form Fields-> SF Object Fields
Select Any Field from SF Object
Map All Fields
Optionally Add Fixed Values &       Parent Adapter
Optionally Set “Upsert”
Submit Form Data to SFCase: User Registration and Volunteer PreferenceModules: Drupal Account, Profile1. Create Profile Fi...
1. Create Profile Fields
2. Map Fields
2. Map Fields
2. Map Fields
2. Map Fields
2. Map Fields
2. Map Fields
3. Register User
4. View Data in Salesforce
Submit Form Data – Joomla!•    The parts    –        J!Salesforce Submit component + J!Salesforce        plugin + J!Salesf...
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Submit Form Data – Joomla!       Ryan Ozimek - @cozimek
Event Registration              links
Event RegistrationCase: Event registration (free event)Products: RSVP, PloneFormGen, PloneFormGen  Salesforce Adapter  1. ...
Create Campaign in SF
Copy Campaign UID
Create Event in Plone
New Event Screen
Fill In Event Details
New Event
Allow RSVPs on Event
RSVP Now Needs Setup
Edit Screen Has RSVP Tab
RSVP Tab For Setup
Optionally Set Registration Capacity
Event Now Has Form!
User Completes Form
User Gets Confirmation
Lead and Campaign Member in SF
Event RegistrationVariants:    Paid event via shopping cart (integrated with    Salesforce)    Form-only interface for r...
Event RegistrationCase: Event Registration for authenticated user (free)Modules: Content Creation Kit1. Create Event Objec...
1. Create Event Content Type
1. Create Event Content Type
2. Map Event Fields to Salesforce Campaign
3. Create Event Registration Form in Drupal
4. Map Event Registration to Campaign Member
5. Create Event
5. Create Event
5. Create Event
5. Create Event
6. Create Registration
7. View Data in Salesforce
Event Registration – Joomla!Components: Events component + J!Salesforce plugin + J!Salesforce events pluginThe process:  ...
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Event Registration – Joomla!        Ryan Ozimek - @cozimek
Donation Processing               links
Donations ProcessingCase: Single page donation form, with variable or user-determined contribution amount. Optionally recu...
Donation Processing
Donation Processing
Donation Processing
Donation Processing
Donation Processing
Donation Processing
Donation Processing
Donation Processing
Donation ProcessingMap fields to objectsEx.1. New Account + Contact + Opportunity2. Household Account + New Contact &  Opp...
Donation ProcessingVariants:  Use the full shopping cart (GetPaid) and allow   program-based donations (a la Heifer).     ...
DonationsCase: DonationsModules: UC_Donation, UC_Salesforce1. Enable UC-Donation module    • Provides a donation content t...
1. Enable UC_Donation
2. Create Donation Product
3. Map Ubercart Fields to Salesforce
3. Map Ubercart Fields to Salesforce
3. Map Ubercart Fields to Salesforce
4. Submit Donation
4. Submit Donation
4. Submit Donation
4. Submit Donation
4. Submit Donation
4. Submit Donation
5. View Donation in Salesforce
Donations – Joomla!Components: Payment component + J!Salesforce plugin + J!Salesforce payment pluginThe process:  Admin c...
Donations – Joomla!    Ryan Ozimek - @cozimek
Donations – Joomla!    Ryan Ozimek - @cozimek
Salesforce + CMS Integration: Plone vs Drupal vs Joomla!     Slides Available: http://slidesha.re/sf-cms-showdownChristoph...
Upcoming SlideShare
Loading in...5
×

Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!

8,983

Published on

Published in: Technology

Transcript of "Open Source CMS + Salesforce Integration Showdown: Plone vs Drupal vs Joomla!"

  1. 1. Salesforce + CMS Integration: Plone vs Drupal vs Joomla!Christopher JohnsonCofounder and CEO, ifPeoplecjj@ifpeople.netwww.ifpeople.netMarcus IannozziPrincipal, Message Agencymarcus@messageagency.comwww.messageagency.comRyan OzimekCofounder and CEO, PICNetcozimek@picnet.netwww.picnet.net
  2. 2. Todays AgendaIntroduction & Getting to Know AudienceIntro to Each CMS and Integration Plone Drupal JoomlaSide-by-side Comparison Use Cases Sending Form Data to Salesforce Event Registration Donation Processing
  3. 3. 1% Time Equity Product 241,000+ hours community service 10,000+ non-profit clients $21 million + grants2/24/11
  4. 4. Before we start...2010 Comparing Open Source Content Management Systems: WordPress, Joomla, Drupal and PloneFree report from Idealwarehttp://bit.ly/cms-report
  5. 5. Integrating Plone and Salesforce Christopher Johnson Cofounder and CEO, ifPeople cjj@ifpeople.net www.ifpeople.net
  6. 6. Plone Vocabulary Product: add on packages Egg: a way products are packaged Buildout: configuration file that builds instance Python: scripting language Plone is written in Zope: application server
  7. 7. Plone Overview User-friendly, intuitive interface Proven: Released 2001, top 2% of Open Source projects Best Security track record of any major CMS Best Practice: Standards-compliant and international Fine-grained, flexible workflow and permissions 1,500+ add on products Protected: IP owned by Plone Foundation Annual conference (8 to date) 340 Core devs, 350+ solution providers in 60+ countries
  8. 8. Plone – Salesforce Integration Started in 2006  Sponsored by Salesforce Foundation grant Released in 2007 ~400 installs Out of the box products up in running in <20 m! About the integration:  Bi-directional integration  Real time or cached use of Salesforce data  Sync Plone with data in Salesforce
  9. 9. Plone – Salesforce Integration
  10. 10. Plone – Salesforce Tools Today • Web-to-x Forms • Events RSVP • Payments (form and shopping cart) • Login authentication • Developer tools for bringing in data from Salesforce
  11. 11. Plone – Salesforce Adv Integration Directories and mashups (Google Maps) Member profile updating Permissions in website based on Salesforce data Syncing between custom content types (build through web or code) User activity tracking (search, download, view) Volunteer Management Portal Inventory Management
  12. 12. Organizations Using Integrations Center for Economic Progress, New Global Citizens,  volunteer.economicprogress.org newglobalcitizens.org  Sustainable Connections, sustainableconnections.org Northwest EcoBuilding  Oregon Environmental Council, oeconline.org Guild, ecobuilding.org  New Mexico Consortium, newmexicoconsortium.org Climate Solutions,  Idaho Conservation League, idahoconservation.org climatesolutions.org National Community Tax Coalition, tax- coaliution.org Trees for Life, treesforlife.org
  13. 13. Plone-Salesforce Resources Full demo slides and case studies: http://bit.ly/plone-sfProduct Documentation (links to product sources): http://bit.ly/plonesfdoc Plone-Salesforce Mailing List: http://bit.ly/plonesflist
  14. 14. SALESFORCE SUITE:Integrating Salesforce and Drupal
  15. 15. About Drupal• Proven – Open source CMS first released in 2001• Extensible, Complex, and Flexible – Extended by thousands of free modules – More a framework than a CMS or blogging engine• Supported – First Drupalcon 2005 in Antwerp – 40 developers – 2010 Drupalcon SF attendees: 3,000+• Usage – As of 2/2011, Drupal core active on an underestimated 400,000 sites – 1% of top 1 million sites are built in Drupal• Lauded – Awards: Webware 100, PAKT Publishing
  16. 16. Drupal Vocabulary• Core – Drupal’s framework and default installation• Module (contribs) – Contributed plug-ins that add functionality• Node – The fundamental unit of content• CCK – Content Creation Kit – Content Type builder
  17. 17. Salesforce Suite: History• Current version: 2.X for Drupal 6.X• Actively Maintained since 2007• 203 Installs and growing rapidly• Advent of Drupal 7 will improve the module dramatically
  18. 18. Salesforce Suite: Overview• Framework – Bi-Directional – Real-Time and Cached Data – Extensible: Expose any field – Flexible: Connect any custom objects• Modules – Salesforce Suite – Ubercart/Salesforce Integration – Salesforce Feeds – Salesforce Webform Integration
  19. 19. Salesforce Suite: FeaturesWhat’s So Cool About It?• Default fieldmaps• Duplicate record prevention & Prematching• Set Fixed and PHP values• Bulk import operations from SF 2 Drupal• Salesforce Object explorer• Fieldmap import/export capability• Outbound messaging 2 pass from SF 2 Drupal
  20. 20. Salesforce Suite: FeaturesPlanned for 2011• Many-to-many object relationships• Failure Handling• Two-way synch rules (field level)• Consolidation of all Modules into one Suite (Drupal 7’s data abstraction layer)
  21. 21. Advanced Use Cases• Membership Management/Directories• Course Registration and E-Learning Environments• Volunteer Registration and Kiosk Check-In• Shop Purchases• Fundraising Pages
  22. 22. Salesforce Suite: Clients• Pennsylvania Legal Aid Network http://palegalaid.net• Institute for Conservation Leadership http://icl.org• Violette de Mazia Foundation http://demazia.org• Mazzoni Center http://mazzonicenter.org• Cradles to Crayons http://cradlestocrayons.org
  23. 23. More infoSalesforce Suitehttp://drupal.org/project/salesforceHow To: http://drupal.org/node/1033964Others:http://drupal.org/project/sf_webformhttp://drupal.org/project/uc_salesforcehttp://drupal.org/project/salesforce_feeds
  24. 24. Joomla + Salesforce.com NTEN Webinar February 25, 2011 Ryan Ozimek - @cozimek
  25. 25. Intro to Joomla!• Long-term history – Open source CMS first released in 2000 (called Mambo back then)• User-focused, easy – Nearly 7,000 extensions with two-click installation – No need to write code for nearly any off-the-shelf tools available• Huge community – Nearly 500,000 users within the official forums – 145 registered user groups around the world• Usage – As of February, downloaded more than 22 million times since 2007 – Powers an increasing 2.7% of top 1 million sites Ryan Ozimek - @cozimek
  26. 26. Joomla! Vocabulary• Components – Applications that run in the CMS• Modules – View of content around a page’s component• Plugins – Libraries, the glue, triggers Ryan Ozimek - @cozimek
  27. 27. History of J!Salesforce• Started back in 2006 by PICnet• Revived in 2009• Significant reinvestment in 2010-2011• Used by… – IceStone – http://www.icestone.biz (socially responsible business) – Hitachi Foundation – http://www.hitachifoundation.org Ryan Ozimek - @cozimek
  28. 28. Reusable parts• Components – J!Salesforce Submit – J!Salesforce Search – (your third party component)• Plugins – J!Salesforce Library – J!Salesforce plugin to your component(s) Ryan Ozimek - @cozimek
  29. 29. How this all works• All real-time data exchanges between SF.com and Joomla• Basic form submission and search core to the package• All other features are based on combined integration between third-party components and J!Salesforce Ryan Ozimek - @cozimek
  30. 30. InstallationRyan Ozimek - @cozimek
  31. 31. Online Forms links
  32. 32. Submit Form Data to Salesforce Case: any information collection that maps to one or more objects in Salesforce (contact form, newsletter sign up, feedback, survey, etc) Products: PloneFormGen, Salesforce PFG Adapter, BaseConnector 1. Create form and fields in Plone 2. Add Salesforce Adapter 3. Select Salesforce object to send data to and map form fields to Salesforce 4. (Optionally) Add preset values, additional adapters or upsert
  33. 33. Create a New Form
  34. 34. Create a New Form
  35. 35. Configure New Form
  36. 36. Default Form
  37. 37. Easy to Add Custom Fields
  38. 38. Edit Custom Fields
  39. 39. Many Data Validators Available
  40. 40. Drag-n-Drop Form Editor
  41. 41. Completed Form
  42. 42. Add Salesforce Adapter
  43. 43. Name The Adapter
  44. 44. Choose from Any SF Object
  45. 45. Map Form Fields-> SF Object Fields
  46. 46. Select Any Field from SF Object
  47. 47. Map All Fields
  48. 48. Optionally Add Fixed Values & Parent Adapter
  49. 49. Optionally Set “Upsert”
  50. 50. Submit Form Data to SFCase: User Registration and Volunteer PreferenceModules: Drupal Account, Profile1. Create Profile Fields in Drupal2. Map User Fields to Salesforce Contact3. Register User4. View Data in Salesforce
  51. 51. 1. Create Profile Fields
  52. 52. 2. Map Fields
  53. 53. 2. Map Fields
  54. 54. 2. Map Fields
  55. 55. 2. Map Fields
  56. 56. 2. Map Fields
  57. 57. 2. Map Fields
  58. 58. 3. Register User
  59. 59. 4. View Data in Salesforce
  60. 60. Submit Form Data – Joomla!• The parts – J!Salesforce Submit component + J!Salesforce plugin + J!Salesforce events plugin• The process – Admin creates a form in Joomla, associating it with an object in SF.com – Visitor fills out form on the site, and data flows into the appropriate object in SF.com – Visitor is taken to a thank you page Ryan Ozimek - @cozimek
  61. 61. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  62. 62. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  63. 63. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  64. 64. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  65. 65. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  66. 66. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  67. 67. Submit Form Data – Joomla! Ryan Ozimek - @cozimek
  68. 68. Event Registration links
  69. 69. Event RegistrationCase: Event registration (free event)Products: RSVP, PloneFormGen, PloneFormGen Salesforce Adapter 1. Create campaign in Salesforce 2. (Optional) Create custom registration form 3. Edit event in Plone and configure RSVP
  70. 70. Create Campaign in SF
  71. 71. Copy Campaign UID
  72. 72. Create Event in Plone
  73. 73. New Event Screen
  74. 74. Fill In Event Details
  75. 75. New Event
  76. 76. Allow RSVPs on Event
  77. 77. RSVP Now Needs Setup
  78. 78. Edit Screen Has RSVP Tab
  79. 79. RSVP Tab For Setup
  80. 80. Optionally Set Registration Capacity
  81. 81. Event Now Has Form!
  82. 82. User Completes Form
  83. 83. User Gets Confirmation
  84. 84. Lead and Campaign Member in SF
  85. 85. Event RegistrationVariants: Paid event via shopping cart (integrated with Salesforce) Form-only interface for registration Set up “upsert” on form for duplicate prevention Registrations for logged in users pre-populates form
  86. 86. Event RegistrationCase: Event Registration for authenticated user (free)Modules: Content Creation Kit1. Create Event Object in Drupal2. Map Event Fields to Salesforce Campaign3. Create Event Registration form in Drupal4. Map Event Registration to Salesforce Campaign Member5. Create Event (automatically passes to Salesforce as Campaign)6. Create Registration (automatically passes to Salesforce as Campaign Member)7. View in Salesforce
  87. 87. 1. Create Event Content Type
  88. 88. 1. Create Event Content Type
  89. 89. 2. Map Event Fields to Salesforce Campaign
  90. 90. 3. Create Event Registration Form in Drupal
  91. 91. 4. Map Event Registration to Campaign Member
  92. 92. 5. Create Event
  93. 93. 5. Create Event
  94. 94. 5. Create Event
  95. 95. 5. Create Event
  96. 96. 6. Create Registration
  97. 97. 7. View Data in Salesforce
  98. 98. Event Registration – Joomla!Components: Events component + J!Salesforce plugin + J!Salesforce events pluginThe process: Admin creates a campaign in SF.com Admin creates an event in Joomla, associating it with acampaign in SF.com Visitor registers for an event on the site, and data flows into theLead object in SF.com Visitor’s lead record is made a campaign member of theappropriate campaign in SF.com Upon conversion in SF.com, registration information can besent to a new opportunity in SF.com Ryan Ozimek - @cozimek
  99. 99. Event Registration – Joomla! Ryan Ozimek - @cozimek
  100. 100. Event Registration – Joomla! Ryan Ozimek - @cozimek
  101. 101. Event Registration – Joomla! Ryan Ozimek - @cozimek
  102. 102. Event Registration – Joomla! Ryan Ozimek - @cozimek
  103. 103. Event Registration – Joomla! Ryan Ozimek - @cozimek
  104. 104. Event Registration – Joomla! Ryan Ozimek - @cozimek
  105. 105. Event Registration – Joomla! Ryan Ozimek - @cozimek
  106. 106. Event Registration – Joomla! Ryan Ozimek - @cozimek
  107. 107. Donation Processing links
  108. 108. Donations ProcessingCase: Single page donation form, with variable or user-determined contribution amount. Optionally recurring donations.Products: PloneFormGen, PloneGetPaid, PloneFormGen Salesforce Adapter, getpaid.formgen, collective.pfg.creditcardfields, getpaid.SalesforcePloneFormGenAdapter 1. Create form and set as donation type 2. Add donation field set and GetPaid adapter 3. Map form fields to Salesforce
  109. 109. Donation Processing
  110. 110. Donation Processing
  111. 111. Donation Processing
  112. 112. Donation Processing
  113. 113. Donation Processing
  114. 114. Donation Processing
  115. 115. Donation Processing
  116. 116. Donation Processing
  117. 117. Donation ProcessingMap fields to objectsEx.1. New Account + Contact + Opportunity2. Household Account + New Contact & Opportunity3. (flexible custom mapping)
  118. 118. Donation ProcessingVariants: Use the full shopping cart (GetPaid) and allow program-based donations (a la Heifer). • Optionally track “products” purchase in Salesforce
  119. 119. DonationsCase: DonationsModules: UC_Donation, UC_Salesforce1. Enable UC-Donation module • Provides a donation content type • Allows for open amounts2. Create donation product3. Map Ubercart Fields to Salesforce Opportunity and Contact4. Submit Donation (automatically passes contact and opportunity)5. View in Salesforce
  120. 120. 1. Enable UC_Donation
  121. 121. 2. Create Donation Product
  122. 122. 3. Map Ubercart Fields to Salesforce
  123. 123. 3. Map Ubercart Fields to Salesforce
  124. 124. 3. Map Ubercart Fields to Salesforce
  125. 125. 4. Submit Donation
  126. 126. 4. Submit Donation
  127. 127. 4. Submit Donation
  128. 128. 4. Submit Donation
  129. 129. 4. Submit Donation
  130. 130. 4. Submit Donation
  131. 131. 5. View Donation in Salesforce
  132. 132. Donations – Joomla!Components: Payment component + J!Salesforce plugin + J!Salesforce payment pluginThe process: Admin creates an donation form in Joomla, associating it with apayment processor and SF.com Visitor makes a donation, data sent and approved/declined by creditcard gateway Visitor’s payment status, and contact information, is sent to SF.comas a lead of a donation record type in SF.com Upon lead conversion in SF.com, appropriate account, contact, andopportunity information is stored in SF.com Ryan Ozimek - @cozimek
  133. 133. Donations – Joomla! Ryan Ozimek - @cozimek
  134. 134. Donations – Joomla! Ryan Ozimek - @cozimek
  135. 135. Salesforce + CMS Integration: Plone vs Drupal vs Joomla! Slides Available: http://slidesha.re/sf-cms-showdownChristopher JohnsonCofounder and CEO, ifPeoplecjj@ifpeople.netwww.ifpeople.netMarcus IannozziPrincipal, Message Agencymarcus@messageagency.comwww.messageagency.comRyan OzimekCofounder and CEO, PICNetcozimek@picnet.netwww.picnet.net
  1. A particular slide catching your eye?

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

×