X All The Things: Enterprise Content Management
-
Upload
phase2 -
Category
Technology
-
view
713 -
download
1
description
Transcript of X All The Things: Enterprise Content Management
X All The ThingsEnterprise Content Management
7/20/2013
Who this is for
• Developers and site builders
• Project stakeholders
Photo Credit: Allie
hyperboleandahalf.blogspot.com
Photo Credit: Allie
hyperboleandahalf.blogspot.com
Photo Credit: Allie
hyperboleandahalf.blogspot.com
Photo Credit: Allie
hyperboleandahalf.blogspot.com
The client
“Brand Z”
• “Global leader in prestige beauty”
• Conglomerate of 26 brands
• $10 billion in sales annually with $1 billion in online sales
• Operates in 150 countries with 50 online
• Sites in about 30 languages
Core business needs
• Common architecture and infrastructure to build many sites
• Rapid roll out of regional site variants
• Multilingual ability for regional sites
• Allow for broadly divergent designs within a site
Existing solution
• Custom-written commerce engine
• No dynamic CMS
• Content primarily stored in static HTML files
• Publishing content and pushing code are similar process
New platform objectives
• Dynamic CMS
• Mobile first
• Integrates with existing ecommerce system
Platform architecture
Core capabilities
• Drupal based distribution
• Ability to build sites for each brand
• Ability to create regional variants for each site
• Advanced content management
• Flexible layout system
English: branda.com
Spanish: branda.com/es
German: branda.chFrench: branda.ch/frItalian: branda.ch/it
“Brand A”
“Brand A” US site
“Brand A” Switzerland site
“Brand B”
English: brandb.com
Spanish: brandb.com/es
“Brand B” US site
English: brandb.ca
French: brandb.ca/fr
“Brand B” Canada site
image:http://hyperboleandahalf.blogspot.com/2010/06/this-is-why-ill-never-be-adult.html
Revision all the things
Content management
• “Content” includes any public-facing text or media
• Able to be saved to multiple revisions, including dra!s
• Subject to editorial workflow
Revisions
• More like “versions”
• Keep old copies of content
• Ideally, work on multiple versions of content at once
Drupal revision support
• Keeps history of previous copies
• Can’t edit two copies independently
• No working dra!s
• Only applies to nodes
• Only published/unpublished states
Workflow requirements
• Add more states for content, like “dra!,” “needs review,” “approved”
• Restrict access to managing content by state
• Restrict access to transition the state of content
Applying workflow to all content
• Nodes
• Menus
• Blocks
Solution: nodes!
• Drupal provides revisions for entities and fields
• Nodes have publication status and access control
• Existing contrib modules for workflow play nice
Menus
• Drupal menus are not strictly content nor site structure
• Admin UI for managing menus differs from managing nodes/blocks
• Not based on entities/fields
Solution: Menu Field
• Menu-like content as a field
• As a node, the menu becomes revisionable
• Built to mirror Drupal menu output
• Flexible menu content, images and rich text
Solution: Nodeblock
• Block content managed as a node
• As a node, the block content becomes revisionable`
Solution: State Flow
• Highly configurable workflow solution
• API-driven, developer-friendly
• Augments Drupal’s publishing controls and revision history
Revision tagging
• Each revision can be labelled
• All content revisions with a tag can be acted on
Publication and preview system
• Preview whole groups of content updates together
• Publish, unpublish, and manage the workflow state of whole groups of content en masse
Potential Drupal 8 improvements
• Entities everywhere
• Content Staging Initiative and Site Preview System
image:http://hyperboleandahalf.blogspot.com/2010/06/this-is-why-ill-never-be-adult.html
Layout all the things
Flexible layouts
• Select different templates to use for the same content type
• Allow users to define complex inputs for the output of structured content
• Allow users to build basic templates themselves and to reuse them
Multiple layouts in content
• Layouts are independent of content type
• Multiple layouts can be used in one content type
• Editors can define own layouts in CMS
Solution: Template Field
• Allows a single field to contain many pieces of data
• Each template has HTML, optional CSS & JS
• Can be in code, or DB; can be overridden
• Because it’s a field, can be revisioned
Other benefits
• Allows node-specific layouts, even within one content type
• Layouts can be shared across content types
Control over blocks
• Content editors need to create blocks freely
• Need to be able to place blocks as part of page content
• Need to be able to embed blocks in other content
Solution: Block Reference
• Insert blocks into nodes as field content
• In combination with a content block solution, allows reusable block content to be laid out in arbitrary layouts
Solution: Embedabbles
• Allows block content to be placed into rich text contexts
• Effectively allows revisioning of block placement within that context
image:http://hyperboleandahalf.blogspot.com/2010/06/this-is-why-ill-never-be-adult.html
Translate all the things
Content internationalization
• “Content” includes any public-facing text or media
• Content used in the CMS should be specific to a language
• Content should also be specific to a region
• Related translations grouped and accessible from the source node
“Subscription” vs “localization”
• Subscribed content adopts a specific piece of content from another language
• Localized content begins as a copy from another language, but can be edited independently and diverge
English (U.S.)
English (U.K.)
German
Each translation is distinct
• Translations may not be literal
• The version of content for a particular market/language should be managed separately from other markets/languages
Solution: Content translation + i18n
Solution: Custom extension for subscriptions + UI enhancements
Solution: Domain with custom extensions
Potential Drupal 8 improvements
• More i18n functionality in core
• Translatable entities
• Simplify UI for managing content translations
Thanks
Questions?
PHASE2TECHNOLOGY.COM