Drupal 8 is moving along at a steady pace, but not as quickly as we all had hoped. One great advantage of this is that it gives developers time to backport great core features in Drupal 8 as contrib modules in Drupal 7. My obvious inspiration for this blog post comes from the presentation fellow Lullabot, Dave Reid, gave at Drupalcon Austin on how to Future-Proof Your Drupal 7 Site. Dave’s presentation was more about what you can do to make your Drupal 7 “ready” where this article is more about showing off Drupal 8 “hotness” that we can use in production today in Drupal 7 sites.
Drupal 8 contains a ton of improvements for site builders, developers, and in the overall UI. During this series of Drupalize.Me Drupal 8 blog posts, we have covered lots of these improvements. I would like to come back full-circle and quickly look at lots of the features Drupal 8 has to offer to site builders in the UI and then compare that feature to a module that exists or has been backported to Drupal 7.
My overall goal is to show you what you can have now without having to wait for Drupal 8. In the screencast below, I will compare the visual differences of the Drupal 8 versus the Drupal 7 versions of these features. Dave gives us a ton of modules to consider. (In fact, way too many for me to compare in a quick screencast). Just in case you haven’t watched his presentation, here is a list of the UI-related and modules for site builders he presented and what features they give Drupal 7 that Drupal 8 will have at launch (assuming they don’t get removed before then).
Drupal 7 Modules Providing Drupal 8 Features
Admin Menu Bar
Replaces Drupal 7 tool bar to one that behaves just like Drupal 8’s and is responsive as well.
Allows content editors to edit posts inline.
A WYSIWYG editor without the use of the WYSIWYG module.
Core theme, but responsive.
Replaces Drupal 7 core elements to be HTML5.
Views, not much more to say.
Replaces admin pages with views.
Views Bulk Operations
Apply changes accross multiple selections in an admin view.
Views Responsive Grids
A views plugin that gives you responsive grids.
Adds a library to allow tables to function responsively.
Breakpoints management for responsive web design.
Utilizes breakpoints and image styles to give you responsive images.
Allows developers to create tours, joyride was used to create the tour module in Drupal 8.
Dynamically filter the modules page to find the module you are looking for.
Simplified Admin Menu
This module simplifies the core Menu and Shortcut modules by merging the “List links” and “Edit menu” operations into a single administration page.
Back to Site
Adds a ‘Back to site’ button when the user has clicked on an administration URL from a non-administration page.
This module provides a very simple caption input filter that can be used to attach captions to an image or embeddable object.
Better Block System
Turns blocks into entities giving us block types that are fieldable.
Multiple Instances of a Block
Allows a single block to be used in more than one region at a time.
Allows one entity to reference another.
A field formatted for telephone numbers.
A field formatted for email addresses.
A field formatted for URLs.
This is the date module which gives us a date field and much more.
Allow administrators to define custom view modes for entities.
Allows (fieldable) entities to be translated into different languages, by introducing entity/field translation for the new translatable fields capability in Drupal 7.
Translate the title of a node.
Keep in mind, this list is not all there is but is certainly a good chunk of what makes Drupal 7 more like Drupal 8. Some of these modules may also have competitor modules, but this is the list recommended by Dave for multiple reasons – from personal experience to knowing what module is more stable.
In the following screencast I will take a look at an installed Drupal 8 core site as well as a site in Drupal 7 with many of the above modules installed. I will then swipe between screens to show the differences. I will also demonstrate some of the modules in Drupal 7 to show off the functionality we can have today and not wait for the Drupal 8 of tomorrow.
** Disclaimer: Yes, I understand that not all those modules are "backports" and have existed before Drupal 8. Some of them are the reason for some of the features in Drupal 8.