IAC 2024 - IA Fast Track to Search Focused AI Solutions
PHPNW Drupal as a Framework
1. Drupal as a Framework
Mike Bell
Drupal Developer
@mikebell_
http://drupal.org/user/189605
2. What is Drupal?
Basic CMS
Framework
Awesome!
About Drupal, The F word, Drupal as a
Framework, Case Study, The Future.
3. History of Drupal
5 Major version 4 – 5 no longer receive
4.x – Deprecated security updates
5.x – Deprecated
6.x – Supported
7.x – Supported 6 – 7 Active support
8.x – In Development and new contributed
modules
5. What is a Framework
“A web application framework is a software
framework that is designed to support the
development of dynamic websites, web
applications and web services.” - Wikipedia
Drupal is all these are more!
6. Why is Drupal a framework?
Contributed Modules – Ctools, Views, CCK (6)
API
Services Module
8. Quick Case Study
Better Regulation
Document Management system – on steroids
Extending Drupal way beyond a simple CMS
application.
Over 10k+ of custom code
5k+ commits (GIT FTW!)
9. Features
Parsing 200/300 page documents
Time sensitive versions - “The Time Machine”
SOLR Search – modified through modules
10. Parsing
HTML File
Split on HTML tags
Processed using built in Batch API
ID numbers created using built in Lock API
11. Time Machine
Expands on Drupals nid and vid methodology
Adds 3rd id called docid (and defid)
14. Form API
Create new form entirely from PHP arrays
Hook into any Drupal form and alter contents
Add/Alter validation functions
Add/Alter submission functions
16. Drupal 8 – The Future
Adopting more OO standards
Inclusion of Symfony2 components
Configuration Management
Full HTML5 support (Improved mobile
compatibility)
18. Drupal 8 and Symfony2
Announced this year at DrupalCon Denver
Collaboration between Drupal and Symfony2
Allowing contribution from Drupal to Symfony2
and vice-versa.
19. Symfony2
It's all about adoption
Taking best parts of Symfony2 and including
them
Attracting new developers and enterprise
developers
20. Symfony2 Components
HttpFoundation – better session handling, less
reliance on globals
HttpKernel – better responses to client
Routing – seperation of url look from function
EventDispatcher
DependencyInjection
ClassLoader – automatic inclusion of classes,
compatability with other none Drupal
applications.
22. NWDUG
North West Drupal User Group
1st Wednesday of every month
6pm to 8-9pm at Madlab in the Northern Quarter
No excuses!
This Month – Simplifying Drupal admin interface
Next Month – Testing in Drupal