SlideShare a Scribd company logo
Integrating 
Files 
Into D7 Authoring Workflow 
Matt Mendonca
Me 
IT Specialist (i.e. Web Developer) at the 
Institute of Standards and Technology 
Previously a Developer at 
(FleishmanHillard) and 
High Rock Studios 
National 
VOX Global 
2+ years professional experience with Drupal
You May Recall 
John Venable from NIST presented last month. 
(he is exceptionally tall)
True Story... 
I am taller than John. 
(in certain circumstances)
Moving Along...
Contents 
What are we trying to do 
How we are doing it 
Questions 
Demo
What Are We Trying 
To Do 
In the process of moving from CommonSpot to 
Drupal. We need to meet or exceed CommonSpot's 
features. 
Fieldable files 
Revisionable files 
Add files from and insert files into the WYSIWYG
How are we doing it 
Media module and... 
First implementation: John let's just use a file field 
Actual first implementation: custom module(s) 
https://github.com/matt-mendonca/ck-browser 
Don't actually use it; you've been warned 
Current implementation: Media 7.x-2.0, and others, 
complemented by custom modules
Living Dangerously 
You're about to hear stuff like "dev branch" and 
"patch" - Media handling in Drupal is in flux. 
Don't do this unless you are comfortable blowing 
things up and fixing it.
Contrib Modules 
Media 7.x-2.0-alpha3 
File Entiy 7.x-2.0-alpha3 
File entity Revisions 7.x-1.x-dev (and patches) 
Rabbit Hole (files) 7.x-2.23 (and patch) 
WYSIWYG 7.x-2.x-dev
Media 
https://www.drupal.org/project/media 
Provides a framework for handling files, images, 
videos, etc 
Using 2.0-alpha over 1.x stable because of the file 
entity module 
Dev branch tends to break frequently 
"...New is always better[, Ted]."
File Entity 
https://www.drupal.org/project/file_entity 
Adds an entity for files. Allows you to field files like 
you would nodes, users, etc 
Using 2.0-alpha; it is the most stable release
File Entity Revisions 
https://www.drupal.org/project/file_entity 
Kind of a mess right now, however, it allows file 
entities to have revisions 
Using latest dev ( makes the actual file revisonable 
) 
and these patches: 
Add a revisions tab to files: 
https://www.drupal.org/node/2097975 
Set the default revision status for file types: 
https://www.drupal.org/node/2259049
Rabbit Hole 
https://www.drupal.org/project/rabbit_hole 
Allows us to redirect anonymous users directly to 
the file from the file entity 
Doesn't tie us to a layout solution (panels could do this too) 
Using latest stable and the following patch: 
Undefined index on file entity form: 
https://www.drupal.org/node/2315761
WYSIWYG 
https://www.drupal.org/project/WYSIWYG 
Adds a WYSIWYG 
Not using CK Editor module because it breaks 
with Media 2 
We are using the CK Editor text editor 
Using latest dev of module since it supports recent 
versions of CK Editor
Custom Modules 
File Entity Link Display Mode 
Media Browser Override
File Entity Link Display 
Mode 
https://github.com/matt-mendonca/ 
file_entity_link_display_mode 
Adds a display mode for file entities that links to the 
file entity, not the file itself.
Media Browser 
Override 
https://github.com/matt-mendonca/ 
media_browser_override 
Overrides (as cleanly as possible) some of Media 2's 
media browser WYSIWYG plugin functionality. 
Default to WYSIWYG display format 
Skip view mode form in the media browser 
Alter media browser plugin js
How everything fits 
together 
Media provides the ground work 
Media browser WYSIWYG plugin (part of Media 2) allows us to 
add and insert media from a wyswiwyg 
File Entity and File Entity Revisions lets us interact 
with files like nodes 
Rabbit Hole allows us to have a link to the file that 
will always (within reason) be correct 
Custom modules fill in the gaps
Questions?
<shameless-plug> 
podium js 
</shameless-plug>
Demo

More Related Content

PPTX
TriDUG WebFM Presentation
cgmonroe
 
PPT
Open Source Content Management Systems
Matthew Turland
 
PPTX
BuddyPress OCWC 2010
Suzette Franck
 
PPT
Local Drupal MultiSite Set-up
Manuel Felix G. Abejo Jr.
 
PDF
Sanjip Shah: Internationalizing and Localizing WordPress Themes
wpnepal
 
ODP
Drupal Now! - Introduction to Drupal
Alozie Nwosu
 
KEY
Drupal Multisite
Peter Arato
 
PDF
Drupal Multisite Setup
ipsitamishra
 
TriDUG WebFM Presentation
cgmonroe
 
Open Source Content Management Systems
Matthew Turland
 
BuddyPress OCWC 2010
Suzette Franck
 
Local Drupal MultiSite Set-up
Manuel Felix G. Abejo Jr.
 
Sanjip Shah: Internationalizing and Localizing WordPress Themes
wpnepal
 
Drupal Now! - Introduction to Drupal
Alozie Nwosu
 
Drupal Multisite
Peter Arato
 
Drupal Multisite Setup
ipsitamishra
 

What's hot (20)

PDF
Vinay Paudel: Optimizing and Speeding up a WordPress site
wpnepal
 
PPT
WordPress MU 101
Pete Mall
 
PPTX
WordPress Multisite deck
belsien
 
ODP
Drupal Multi-Site Setup
ylynfatt
 
PPT
Mambo (2006) Presentation on CMS
John Patten
 
PPTX
Introduction to word press
Lucky Ali
 
DOCX
How to install wordpress on wampserver
shreyakp
 
PDF
Introduction to Drupal - Installation, Anatomy, Terminologies
Gerald Villorente
 
PPTX
Ithemes presentation
Jason Yingling
 
PPT
Serving Moodle Presentation
webhostingguy
 
PPT
Intro to Drush
David Watson
 
PPT
Spider Course Day 1
Harishankaran K
 
PDF
Apache Server Tutorial
Jagat Kothari
 
ODP
Building Dynamic Websites With Joomla CMS
Thomas Siegers
 
PPTX
Worcamp2012 make a wordpress multisite in 20mins
Chandra Prakash Thapa
 
PPT
WordPress Multisite
Brad Williams
 
PPTX
wordpress
vedvratsingh
 
PDF
Installing & Setting Up WordPress
Gravitational FX
 
PPTX
Cache is king
edrone
 
PPTX
Cache is the king
Kasia Przybylska
 
Vinay Paudel: Optimizing and Speeding up a WordPress site
wpnepal
 
WordPress MU 101
Pete Mall
 
WordPress Multisite deck
belsien
 
Drupal Multi-Site Setup
ylynfatt
 
Mambo (2006) Presentation on CMS
John Patten
 
Introduction to word press
Lucky Ali
 
How to install wordpress on wampserver
shreyakp
 
Introduction to Drupal - Installation, Anatomy, Terminologies
Gerald Villorente
 
Ithemes presentation
Jason Yingling
 
Serving Moodle Presentation
webhostingguy
 
Intro to Drush
David Watson
 
Spider Course Day 1
Harishankaran K
 
Apache Server Tutorial
Jagat Kothari
 
Building Dynamic Websites With Joomla CMS
Thomas Siegers
 
Worcamp2012 make a wordpress multisite in 20mins
Chandra Prakash Thapa
 
WordPress Multisite
Brad Williams
 
wordpress
vedvratsingh
 
Installing & Setting Up WordPress
Gravitational FX
 
Cache is king
edrone
 
Cache is the king
Kasia Przybylska
 
Ad

Similar to Integrating Files Into Drupal 7 Authoring Workflow (20)

PDF
Features everywhere
Mediacurrent
 
PDF
Common Docker Problems and Solutions
Joel Chen
 
DOCX
fuelOrigin.docx
KanhaJi5
 
PPT
Introduction to Software Build Technology
Philip Johnson
 
PPT
Drupal 7 Media modules
Grigory Naumovets
 
PPT
Feed the Masses
pbugni
 
PDF
full-stack-development-readthedocs-io-en-latest.pdf
sharmakhusbu830
 
PPT
subversion.ppt
TahaKhayyam
 
PPT
Version Control
Matt Stoner
 
ODP
New Technologies demoed at the 2011 Plone Conference
jcbrand
 
PPT
Web2 0
rbwalker15
 
PDF
WordPress modern development
Roman Veselý
 
PPTX
Develop with docker 2014 aug
Vincent De Smet
 
PDF
Brackets code editor guide
Laurence Svekis ✔
 
PPTX
TDF Professional Conf 2010 - Rapid Windows 7 Deployments
jimboks
 
PDF
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Teamstudio
 
DOC
Dreamwares Recent Projects
Dreamwares
 
ODP
Drupal distributions - how to build them
Dick Olsson
 
PPTX
Docker Overview
Gary Williams
 
PPTX
Yes, you can do that with AIR 2.0
Peter Elst
 
Features everywhere
Mediacurrent
 
Common Docker Problems and Solutions
Joel Chen
 
fuelOrigin.docx
KanhaJi5
 
Introduction to Software Build Technology
Philip Johnson
 
Drupal 7 Media modules
Grigory Naumovets
 
Feed the Masses
pbugni
 
full-stack-development-readthedocs-io-en-latest.pdf
sharmakhusbu830
 
subversion.ppt
TahaKhayyam
 
Version Control
Matt Stoner
 
New Technologies demoed at the 2011 Plone Conference
jcbrand
 
Web2 0
rbwalker15
 
WordPress modern development
Roman Veselý
 
Develop with docker 2014 aug
Vincent De Smet
 
Brackets code editor guide
Laurence Svekis ✔
 
TDF Professional Conf 2010 - Rapid Windows 7 Deployments
jimboks
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Teamstudio
 
Dreamwares Recent Projects
Dreamwares
 
Drupal distributions - how to build them
Dick Olsson
 
Docker Overview
Gary Williams
 
Yes, you can do that with AIR 2.0
Peter Elst
 
Ad

Recently uploaded (20)

PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
The Future of Artificial Intelligence (AI)
Mukul
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 

Integrating Files Into Drupal 7 Authoring Workflow

  • 1. Integrating Files Into D7 Authoring Workflow Matt Mendonca
  • 2. Me IT Specialist (i.e. Web Developer) at the Institute of Standards and Technology Previously a Developer at (FleishmanHillard) and High Rock Studios National VOX Global 2+ years professional experience with Drupal
  • 3. You May Recall John Venable from NIST presented last month. (he is exceptionally tall)
  • 4. True Story... I am taller than John. (in certain circumstances)
  • 6. Contents What are we trying to do How we are doing it Questions Demo
  • 7. What Are We Trying To Do In the process of moving from CommonSpot to Drupal. We need to meet or exceed CommonSpot's features. Fieldable files Revisionable files Add files from and insert files into the WYSIWYG
  • 8. How are we doing it Media module and... First implementation: John let's just use a file field Actual first implementation: custom module(s) https://github.com/matt-mendonca/ck-browser Don't actually use it; you've been warned Current implementation: Media 7.x-2.0, and others, complemented by custom modules
  • 9. Living Dangerously You're about to hear stuff like "dev branch" and "patch" - Media handling in Drupal is in flux. Don't do this unless you are comfortable blowing things up and fixing it.
  • 10. Contrib Modules Media 7.x-2.0-alpha3 File Entiy 7.x-2.0-alpha3 File entity Revisions 7.x-1.x-dev (and patches) Rabbit Hole (files) 7.x-2.23 (and patch) WYSIWYG 7.x-2.x-dev
  • 11. Media https://www.drupal.org/project/media Provides a framework for handling files, images, videos, etc Using 2.0-alpha over 1.x stable because of the file entity module Dev branch tends to break frequently "...New is always better[, Ted]."
  • 12. File Entity https://www.drupal.org/project/file_entity Adds an entity for files. Allows you to field files like you would nodes, users, etc Using 2.0-alpha; it is the most stable release
  • 13. File Entity Revisions https://www.drupal.org/project/file_entity Kind of a mess right now, however, it allows file entities to have revisions Using latest dev ( makes the actual file revisonable ) and these patches: Add a revisions tab to files: https://www.drupal.org/node/2097975 Set the default revision status for file types: https://www.drupal.org/node/2259049
  • 14. Rabbit Hole https://www.drupal.org/project/rabbit_hole Allows us to redirect anonymous users directly to the file from the file entity Doesn't tie us to a layout solution (panels could do this too) Using latest stable and the following patch: Undefined index on file entity form: https://www.drupal.org/node/2315761
  • 15. WYSIWYG https://www.drupal.org/project/WYSIWYG Adds a WYSIWYG Not using CK Editor module because it breaks with Media 2 We are using the CK Editor text editor Using latest dev of module since it supports recent versions of CK Editor
  • 16. Custom Modules File Entity Link Display Mode Media Browser Override
  • 17. File Entity Link Display Mode https://github.com/matt-mendonca/ file_entity_link_display_mode Adds a display mode for file entities that links to the file entity, not the file itself.
  • 18. Media Browser Override https://github.com/matt-mendonca/ media_browser_override Overrides (as cleanly as possible) some of Media 2's media browser WYSIWYG plugin functionality. Default to WYSIWYG display format Skip view mode form in the media browser Alter media browser plugin js
  • 19. How everything fits together Media provides the ground work Media browser WYSIWYG plugin (part of Media 2) allows us to add and insert media from a wyswiwyg File Entity and File Entity Revisions lets us interact with files like nodes Rabbit Hole allows us to have a link to the file that will always (within reason) be correct Custom modules fill in the gaps
  • 21. <shameless-plug> podium js </shameless-plug>
  • 22. Demo