SLIDE 1
Single-Source Architecture David Kirkwood, DrupalCon 2018, Nashville
Single-Source Architecture Principles
Single-Source Architecture is strategy for building websites in an iterative manner
- Each sub-site is distinct to the others
- Content
- Editing Privileges
- All are on the same database
- Utilizes core functionality (as of Drupal 8)
- Taxonomy, Content Types, Fields, Views, Blocks
Goals of Single-Source Architecture
- Eliminate Redundancy as it applies to:
- Websites
- Content
- Administration & Maintenance
- Simplify syndication and distribution of content
Websites follow a fairly predictable pattern
- Web content falls into 3 categories
- Static: Content that is regularly edited/updated but never replaced – About Us
- Ephemeral: Information that is rarely edited but regularly replaced – News story
- Dynamic: Information produced in response to a user’s input – Directory list, App
- Websites are generally comprised of the same assets
- Home Page (static with dynamic elements)
- Page (static) ex. About Us
- Employee (static) ex. Faculty Profile
- Announcement/Blog (ephemeral) ex. “Congrats…”, “System Maintenance”
- Event (ephemeral)
- News (ephemeral)
- Date (static) ex. “Last day to register”, Holiday
- Lists (dynamic) ex. Directory
Why do we create completely separate sites that do exactly the same thing?
- Each department needs a ‘Home Page’
- Content control/separation
- Limit editing access to a small group of editors
- Ability to grant access to an entire sub-site with the option to access individual pages
Single-Source Architecture addresses each of these needs
- Each department needs a ‘Home Page’ – Designate a ‘Department’ Content Type
- Content control/separation – Taxonomy