Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Building a
CRAPLOAD
 of Web Sites
 in dotCMS
OR

 Creating a
Site Building
 Framework
   in dotCMS
WE ARE CURRENTLY CONVERTING

700 WEB SITES
        to dotCMS 1.9
CONVENTIONS
    are your friend
A connected base framework of HTML, CSS,
JavaScript, Velocity, and Containers that provide a
solid foundation for all site...
Why Conventions Are Awesome
• Keeps your team on the same page
• You can go into any project and understand what’s going
 ...
How we're using conventions
• “Pluggable” pieces
• Sharing as much code as possible across hosts
• Naming conventions
• Fo...
GLOBAL
  vs.

LOCAL   be lazy
In 1.9 everything lives self-contained on a host.
Because the sites run on the same code base, this
means that we would en...
Global Host
• The host where we distribute all the global pieces of our
  site building framework.
• Host CSS for base lay...
Basically, we come back to the age-old principle
of being lazy. Do something once, and then reuse
it a thousand times.
AND NOW
   AN
EXAMPLE
St. Mark's Hospital
CSS

      GLOBAL HOST




      reset.css   base.css     print.css   mobile.css   ie6-reset.css




                  LOC...
reset.css
• resets all the annoying default styles that browsers love to add
• provides a blank slate to start from
• on g...
base.css and screen.css
• controls basic layout
• hosted globally
• @ import the base of your choice for a layout
• screen...
print.css
ie6-reset.css
• not all browsers, especially older ones, are going to see
  exactly the same design
• providing a layer of...
mobile.css
• User Agent detection
• iPhone specific Meta tags
• Currently works with iPhone, iPod, iPad (he he) and most
 ...
jQuery
Omniture Analytics
Omniture Search
• meta tag based indexing controlled by logic in the head container
• giant content pull for indexing (sit...
ehc Components
• Distributed across all our sites, tying into our global host.
• similar to dotCMS’s Application widget
• ...
Watch for more details on
        our blog.
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Going Multi-Tenant with dotCMS
Upcoming SlideShare
Loading in …5
×

Going Multi-Tenant with dotCMS

2,731 views

Published on

ehc takes us on a tour of how they are leveraging dotCMS v1.9's advanced multi-tenant capabilities to manage 700 web sites that include; hospitals, outpatient facilities, physician practices and other medical service organizations.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Going Multi-Tenant with dotCMS

  1. 1. Building a CRAPLOAD of Web Sites in dotCMS
  2. 2. OR Creating a Site Building Framework in dotCMS
  3. 3. WE ARE CURRENTLY CONVERTING 700 WEB SITES to dotCMS 1.9
  4. 4. CONVENTIONS are your friend
  5. 5. A connected base framework of HTML, CSS, JavaScript, Velocity, and Containers that provide a solid foundation for all sites.
  6. 6. Why Conventions Are Awesome • Keeps your team on the same page • You can go into any project and understand what’s going on, even if you didn’t start it • You can go to edit an existing site and know exactly where to go to make changes • Speedy implementations of CSS, JavaScript, Velocity, and other cool stuff • Enables designers and project managers to implement complex functionality • Ensures quality control
  7. 7. How we're using conventions • “Pluggable” pieces • Sharing as much code as possible across hosts • Naming conventions • Folder structure • Browser Support, Graceful Degradation, Progressive Enrichment • jQuery minimalism • Project Stages and Basecamp
  8. 8. GLOBAL vs. LOCAL be lazy
  9. 9. In 1.9 everything lives self-contained on a host. Because the sites run on the same code base, this means that we would end up with lots of dupli- cate containers, vtls, CSS, and jQuery plugins.
  10. 10. Global Host • The host where we distribute all the global pieces of our site building framework. • Host CSS for base layouts, print styles, and mobile styles • Host jQuery plugins and other global JavaScript • Host all containers for velocity powered functionality and HTML • Global content delivery (CDN) • Host files referenced by widgets and containers used across sites
  11. 11. Basically, we come back to the age-old principle of being lazy. Do something once, and then reuse it a thousand times.
  12. 12. AND NOW AN EXAMPLE
  13. 13. St. Mark's Hospital
  14. 14. CSS GLOBAL HOST reset.css base.css print.css mobile.css ie6-reset.css LOCAL HOST screen.css ie7.css ie6.css
  15. 15. reset.css • resets all the annoying default styles that browsers love to add • provides a blank slate to start from • on global host and cached across all of our hosts
  16. 16. base.css and screen.css • controls basic layout • hosted globally • @ import the base of your choice for a layout • screen.css provides layer of typographic and graphic styling locally
  17. 17. print.css
  18. 18. ie6-reset.css • not all browsers, especially older ones, are going to see exactly the same design • providing a layer of content level support by using one stylesheet that provides a simple, usable design • using the same HTML naming conventions makes this really easy
  19. 19. mobile.css • User Agent detection • iPhone specific Meta tags • Currently works with iPhone, iPod, iPad (he he) and most other mobile browsers • Fully CSS-powered; no JS
  20. 20. jQuery
  21. 21. Omniture Analytics
  22. 22. Omniture Search • meta tag based indexing controlled by logic in the head container • giant content pull for indexing (site-map.dot) • xml based response • results page widget
  23. 23. ehc Components • Distributed across all our sites, tying into our global host. • similar to dotCMS’s Application widget • Versioning by structure. ehc Components v1 widgets, v2, v3 ... v#
  24. 24. Watch for more details on our blog.

×