What is Drupal? ● FOSS ● Content management framework ● https://www.drupal.org ● Started in 1999 as a message board ● PHP ● “Not invented here”, but changing ● GPL2 license ● 6 and 7 are our current stable releases ● 8 is in development
Who uses Drupal? ● ~3% of the web is powered by Drupal ● Over 1,000,000 active sites (that we know about) ● Particularly popular in higher education and government ● whitehouse.gov ● beta.london.gov.uk
Source Control / Versioning / Deployment (project) ● Use what VCS, versioning system and deployment tools that you want. ● One big repo with core, contrib projects, custom code ● Drush Make or Composer for declaring versions and dependencies
Configuration ● Currently, mostly database with exportable features ● Override or define variables in settings.php using $conf[varName]. ● Drupal 8 introduces full or partial configuration synchronisation in core - import/export via the UI, or version control
Multiple Editors/Developers ● Online via forms. ● Multiple user accounts with different roles and permissions. ● Content Lock module provides anti- concurrent editing ● Revisions, published and unpublished by default. ● Workbench Moderation provides moderation states and review workflow.
Multiple Editors/Developers I suggest: ● Export everything into code, and disable UI modules. ● Disable installing and updating modules through the admin UI. ● Use an appropriate version control workflow.
Upgrades ● Update path between minor releases, and major releases prior to Drupal 8. ● Migration into Drupal 8 from earlier versions or different (non-Drupal) data sources.
3 Best Things 1. Free and open source 2. Community 3. It gives users the chance to build something without writing a line of code (more-so in Drupal 8)
Other Cool Stuff 1. Integrated eCommerce 2. Integrates with third-party applications and services such as CRMs 3. Migrate framework - migrating data into Drupal 4. REST in D8 core - exposing data from within Drupal 5. “Headless/Decoupled” Drupal - JS front-end/Drupal back-end
The Future of Drupal Drupal 8! ● More useful things in core ● Modern PHP/front-end architecture and techniques ● Transferrable skills across frameworks for Developers, and lower barrier to entry for new contributors