PHPNW Drupal as a Framework


Published on

Presentation I did at PHPNW on the 5th June 2012 entitle Drupal as a Framework

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

PHPNW Drupal as a Framework

  1. 1. Drupal as a Framework Mike Bell Drupal Developer @mikebell_
  2. 2. What is Drupal?Basic CMSFrameworkAwesome!About Drupal, The F word, Drupal as a Framework, Case Study, The Future.
  3. 3. History of Drupal5 Major version 4 – 5 no longer receive4.x – Deprecated security updates5.x – Deprecated6.x – Supported7.x – Supported 6 – 7 Active support8.x – In Development and new contributed modules
  4. 4. Major ImprovementsBigger and better apiMore hooksImproved hooks!
  5. 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.” - WikipediaDrupal is all these are more!
  6. 6. Why is Drupal a framework?Contributed Modules – Ctools, Views, CCK (6)APIServices Module
  7. 7. CLI ToolsDrush - “Command Line Drupal” (Pear install)drush site-installdrush pm-enabledrush sqlc
  8. 8. Quick Case StudyBetter RegulationDocument Management system – on steroidsExtending Drupal way beyond a simple CMS application.Over 10k+ of custom code5k+ commits (GIT FTW!)
  9. 9. FeaturesParsing 200/300 page documentsTime sensitive versions - “The Time Machine”SOLR Search – modified through modules
  10. 10. ParsingHTML FileSplit on HTML tagsProcessed using built in Batch APIID numbers created using built in Lock API
  11. 11. Time MachineExpands on Drupals nid and vid methodologyAdds 3rd id called docid (and defid)
  12. 12. SOLRStandard SOLR searchUsing Apache SOLR contributed moduleBiasing added through custom module
  13. 13. API ExamplesForm APIMenu Hooks
  14. 14. Form APICreate new form entirely from PHP arraysHook into any Drupal form and alter contentsAdd/Alter validation functionsAdd/Alter submission functions
  15. 15. Menu Hookfunction hook_menu() { $items[example] = array( title => Example Page, page callback => example_page, access arguments => array(access content), type => MENU_SUGGESTED_ITEM, );
  16. 16. Drupal 8 – The FutureAdopting more OO standardsInclusion of Symfony2 componentsConfiguration ManagementFull HTML5 support (Improved mobile compatibility)
  17. 17. Configuration ManagementTo me the most important part of Drupal 8Settings and Content Dev → Stage → Production
  18. 18. Drupal 8 and Symfony2Announced this year at DrupalCon DenverCollaboration between Drupal and Symfony2Allowing contribution from Drupal to Symfony2 and vice-versa.
  19. 19. Symfony2Its all about adoptionTaking best parts of Symfony2 and including themAttracting new developers and enterprise developers
  20. 20. Symfony2 ComponentsHttpFoundation – better session handling, less reliance on globalsHttpKernel – better responses to clientRouting – seperation of url look from functionEventDispatcherDependencyInjectionClassLoader – automatic inclusion of classes, compatability with other none Drupal applications.
  21. 21. TwigNew templating engineTheming in Drupal is a messTwig should fix thisIncreased SecuritySane standards
  22. 22. NWDUGNorth West Drupal User Group1st Wednesday of every month6pm to 8-9pm at Madlab in the Northern QuarterNo excuses!This Month – Simplifying Drupal admin interfaceNext Month – Testing in Drupal
  23. 23. Interesting Links Any Questions?