https://www.youtube.com/watch?v=NCx0fx-FWSc
Breaking News: Al Jazeera Builds Future-focused Digital Platform with Drupal 8
Sep 28, 2016 at DrupalCon Dublin
This just in: Al Jazeera Media Network, a leading provider in news and media broadcasting, is investing in its future by building a global, multi-lingual, unified CMS platform to streamline the creation and personalized delivery of news on the newly released Drupal 8 platform. This story is still unfolding!
For a global media network like Al Jazeera, Drupal 8 provides the perfect base for internationalization, future growth, and flexibility. Al Jazeera required a platform that could unify several different content streams and support a complicated editorial workflow, allowing network wide collaboration and search.
In this talk, leaders from the Al Jazeera digital project will go “behind-the-scenes” of the network’s next generation publishing platform. Hear from the Al Jazeera Product Managers and Platform Experts about how the content needs driving the media business can map to the underpinnings of a unified publishing platform. We will explore the technical advantages of Drupal 8, as well as the digital strategy that informed the endeavor. You’ll learn:
● Why Al Jazeera Media Network decided to invest in Drupal 8 as an early adopter
● How to use Deploy, Multi-version, and Replication modules to support an enterprise content repository
● The implications of starting with Lightning as a base distribution
● How Al Jazeera Media Network transformed its editorial workflow with Drupal 8 tools
For anyone working in the digital publishing industry or considering using Drupal 8 for a platform, this session is a must-see!
6. ALJAZEERAMEDIANETWORK:
AFUTURE-FOCUSEDDIGITALPLATFORMWITHDRUPAL8
Al Jazeera Digital
Optimization
ADO
In alignment with AJMN
Digital Strategy, ADO is
direct or indirect
optimization of all
processes, platforms,
people, partners and
other enablers that are
pivotal to the success of
AJMN’s digital presence.
PEOPLE
Stakeholders, MarCom Experts, Researchers,
Editors, Platforms Producers, Architects,
Analysts, Engineers, etc.
PROCESSES
Strategy, Policies, Planning, Workplace
transformation, Convergence, Workflows,
SDLC, Delivery, SLAs, Procurement, etc.
TECHNOLOGY
Platforms, CMS, DAM, APIS, Infrastructure,
CDN, Cloud services, Social media, Ads
management, Analytics, etc.
ADO
10. ALJAZEERAMEDIANETWORK:
AFUTURE-FOCUSEDDIGITALPLATFORMWITHDRUPAL8
REVIEWENGAGEDISTRIBUTEORGANIZECAPTUREDISCOVER
Sources
Correspondents
Channels
Wires
Partners
Formats
Text & images
Audio, videos & live
streams
Embeds
Ducuments
Dashboard
Content
Media
Recommendations
Business
Editors/people
Workflows/processes
Platforms
Web
Mobile
Email
Auto importers
Packaging
Semantics &
metadata
Tag & geo-tag
Relate & package
Contextualize
Recommendations
Types
News & breaking
news
Polls & galleries
Infographics & blogs
Timelines & playlists
Schedules & EPG
Weather & results
Platforms
Web
Mobile
Connected devices
APIs
Partners
Commercial
Cloud services
Promote
Advertise
Campaigns
Geo-targeting
Technology
Domain names/URLs
Infrastructure
CDN/Multi-CDN
Responsive & W3C
Social
Shares
Recommendations
Likes
Comments
Interaction
Engage
Personalize
Ad click-through
Feedback
Analytics
Historical
Real-time
BI
Drill downs
Trends
Comparisons
Forecasts
THE PROCESS
11. Requirements:
→ A flexible platform
→ Control over all content streams
→ An architecture that accommodates
structured content
→ An interface for multiple content editors
A UNIFIED CMS
Across All Digital Properties
15. • A lightweight Drupal distribution
maintained by Acquia
• Serves as a starting point
• Covers 20% of the baseline
functionality typically needed on sites:
1. Page Layout
2. Preview
3. Editorial Workflow
4. Asset management
Image source = https://www.drupal.org/project/lightning
WHAT IS LIGHTNING?
Image source: www.drupal.org/project/lightning
16. • Provided a great baseline for the platform:
– Page Layout
– Content Workflow
– Media Management
• Reliable and transparent roadmap:
Image source: www.drupal.org/project/lightning
WHY DID WE CHOOSE LIGHTNING?
drupal.org/node/2670686
17. ALJAZEERAMEDIANETWORK:
AFUTURE-FOCUSEDDIGITALPLATFORMWITHDRUPAL8
THERE ARE THREE WAYS:
1. Install Lightning and just build from there.
2. Use an extend.yml file
● Example Implementation = Acme Lightning Extend
3. Use the patch for extending a profile.
HOW TO EXTEND LIGHTNING?
github.com/balsama/acme-lightning-extend
www.drupal.org/node/1356276
19. MULTILINGUAL
CAPABILITIES
OF THE PLATFORM
Al Jazeera produces content in 5 languages within
its external web pages & admin interface. Fast,
efficient multilingual functionality is crucial.
20. • So many modules needed!
– Not all of the modules work
well together
– Inconsistent handling
across modules
– Must apply patches in order
to survive!
• Complex admin interfaces that
required multiple clicks
• Manual process for updating
locales
THE PAST
INTERNATIONALIZATION
IN DRUPAL 7
22. INTERNATIONALIZATION
IN DRUPAL 8
Thanks to the D8 Multiligual Initiative:
we’ve got lots of goodies in Core!
Imagesource:twitter.com/d8mi/media
TODAY’S
AWESOMENESS:
PUTTING LANGUAGE FIRST
23. Image source: www.drupal8multilingual.org
LANGUAGE HANDLING
• Natively install in 94 languages
• Assign language to everything
• Language dependent blocks
INTERFACE TRANSLATION
• Automated downloads & updates
• Protected local translations
• English customizable/removable
SOME OF THE FEATURES OF D8MI
24. Image source: www.drupal8multilingual.org
CONTENT TRANSLATION
• Field-level configurability
• Applies to all content
• Views integrated
CONFIGURATION
• All translatable
• Built-in translation interface
• All shipped are pre-translatable
SOME OF THE FEATURES OF D8MI
32. • Extends Drupal Core File Entity
• Provides an API and UI for:
– Configuring fields and their
display on File types
– Managing the File entities
(view, create, edit, delete)
→ /file/1
→ /file/1/edit
→ /file/1/delete
• File entity basically treats everything
as a file. Works with custom stream
wrappers to bring remote media to a
Drupal site
FILE ENTITY
FILE ENTITY: drupal.org/project/file_entity
33. • Does not directly extend Drupal
Core File Entity
• Non file-centric storage - does not
assume that the media asset is a file,
or even just a single asset
• Creates a new entity type: Media
MEDIA
ENTITY
MEDIA ENTITY: drupal.org/project/media_entity
42. • Allows you to browse, create and select
entities on the system
(not Media Entity-specific)
• Can be used in different contexts (for a field
or with an Entity Embed button)
• Uses CTools form wizard for a multi-step
workflow of selecting the image(s)
ENTITY
drupal.org/project/entity_browserBROWSER
52. • Allows any entity to be embedded within a
text area using a WYSIWYG editor.
• Enable the entity-embed filter: Display
embedded entities for the desired text
formats
• If the Limit allowed HTML tags filter is
enabled, add <drupal-entity data-*> to the
Allowed HTML tags.
• To enable the WYSIWYG plugin, move the
entity-embed E button into the Active
toolbar for the desired text formats.
• Dependency on Embed module:
drupal.org/project/embed
ENTITY
drupal.org/project/entity_embed
EMBED
59. to Pronovix
as well
Image source: pronovix.com
SHOUTOUT
Brightcove Video Connect for Drupal 8: Parts 1 – 4:
pronovix.com/blog/brightcove-video-connect-drupal-8-part-1
-architecture-summary-and-technical-approach
65. Image source: docs.behat.org/en/v3.0
• Lightning comes with a ton of Behat tests!
• We also wrote some Behat tests for the
platform. We targeted:
a. Workflow: new moderation state
and transitions
b. User Permissions
BEHAT
TESTS
68. Recent Content
from
Content
Repository
Recent Content (B)
My Recent Content (B)
Recent Content
from
Content
Repository
Recent Content (A)
My Recent Content (A)
CMS A
CMS A Content
-
CMS B Content
CONTENT
REPOSITORY
CMS B
WHAT DOES THIS LOOK LIKE?
69. • We implemented a Panel Page that has 3
blocks listing recent content:
a. Recent content (current instance)
b. My recent content (current instance)
c. Recent content (Content Repository)
EDITOR DISCOVERY DASHBOARD
REVIEWENGAGEDISTRIBUTEORGANIZECAPTUREDISCOVER
70. • CMS instances pushed content on creation,
update, and deletion to the Content
Repository instance
• On connected CMS instances we have a
custom block on the Editor Discovery
Dashboard that displays recent content on
the Content Repository:
a. Leverages Core Rest and Basic Auth
b. Connected to a View REST Export on the
Content Repository
CONTENT REPOSITORY
REVIEWENGAGEDISTRIBUTEORGANIZECAPTUREDISCOVER
72. • Allows users to easily stage content
from one Drupal site to another
• Use Multiversion and RELAXed Web
Services to stage content from
source to destination endpoints
• Involves
1. Multiversion
2. Replication
3. Workspace
4. RELAXed Web Services
WHAT IS DEPLOY?
Image source: drupaldeploy.org
73. REVISIONS &
REPLICATION OF
CONTENT
Image source: drupaldeploy.org
MULTIVERSION
● Converts all content entities (nodes, terms,
comments, blocks, users, etc) to be
revisionable.
● Deleted content can be restored.
REPLICATION
Replicate content between workspaces:
● On a single site (with the Workspace module)
● Across different sites (with the RELAXed Web
Services module)
74. WORKSPACE
● You can have different versions of your site
(with Multiversion) – these are workspaces
● Replicate content with Deploy and RELAXed
Web Services across external sites
RELAXED Web Services
● Provides a REST API for sharing and
replicating content
● API uses same protocol as CouchDB
VERSIONING
AND REST API
Image source: drupaldeploy.org
75. Again, another great baseline solution for
the platform:
• Ability to restore deleted content
• Push changes from a CMS instance to
the Content Repository
• Many of these pieces are moving into
Core as part of the Workflow Initiative
Image source: drupaldeploy.org
WHY DID WE
CHOOSE DEPLOY?
76. A RECAP OF THE SETUP
USING DEPLOY SUITE
CMS A
Multiversion Replication
RELAXed
Web Services
Workspaces
Workspace A
MultiversionReplication
RELAXed
Web Services
Workspaces
Workspace A
CONTENT
REPOSITORY
77. THE WORKFLOW
INITIATIVE
Improve content workflow, preview and
content staging by extending and improving
Entity API
Takes inspiration from Entity, Multiversion,
Workspace, Deploy, and Workbench Moderation
78. Workflow Initiative drupal.org/node/2721129
Improving Drupal's content workflow
buytaert.net/improving-drupal-content-workflow
Core conversation from DrupalCon New Orleans
youtube.com/watch?v=_rAB8DJnc8Y
Kanban board
contribkanban.com/sprint/WorkflowInitiative
MORE INFORMATION
81. JOIN US FOR
CONTRIBUTION SPRINTS
First Time Sprinter Workshop - 9:00-12:00 - Room Wicklow2A
Mentored Core Sprint - 9:00-18:00 - Wicklow Hall 2B
General Sprints - 9:00 - 18:00 - Wicklow Hall 2A