D8 You’re Great! My first experience with Drupal 8
This is one of the blogs that I was really thrilled to write because I got to document my first ever installation of the production version of Drupal 8. And boy, was I excited! As you know, Drupal has made some significant changes under the hood in this version. I am not going to go over those changes in this feature, but I thought, I would give an overview of some of the superficial changes that it has undergone. More than anything, as a developer, I was really interested to see how much it has changed in terms of the UI and operability.
I setup Drupal 8 on my Windows 10 machine running Acquia Dev Desktop (yes, you read that right!). The installation was pretty straight forward and appeared to be somewhat quicker than all the versions I have tried before. Once I got it setup, the front page looked extremely familiar, with it running Bartik as the default theme. But right off the bat, I noticed the nice admin toolbar across the top of the page with pretty much the same menu links that we're accustomed to. The one new change, 'Modules' is now called 'Extend'.
The Modules Page
Going to the modules page, we see that we have a module filter by default, making module searches a lot easier when our list starts building up. As we scroll down the list, we notice a couple of inclusions that are finally getting their dues, as you might already know, Views and Views UI are in Core! The Views UI pretty much looks the same but the one thing I really liked is the ability to now clone a View display type as any other display type. To elaborate, in D7, if we wanted to clone a Page display, we were only allowed to clone to the same display type, ‘Page’. However, the Views in D8, now allows us to clone a display type like Page, as any other display type like ‘Block’, ‘Entity Reference’, ‘Feed’, ‘Attachment’, etc (views.png). This is one change I’m really happy about because there has been one too many instances where I’ve had to fiddle with code after cloning a display to transform it to another display type.
More welcomed goodies in Core
The other noticeable changes: we've got CKEditor, Contextual Links, Quick Edit, and Configuration Manager all enabled and running as part of Core. They've also added multilingual capabilities, and web services as part of the release. These are definitely welcomed additions and makes Drupal much more relevant and powerful from the get-go. One additional change that I noticed, the removal of the PHP Filter module. It has now moved to a contributed module at http://drupal.org/project/php.
Display Modes with More Juice
Moving along, Drupal 8 now incorporates some of the functionality of Display Suite and offers us more control over the way nodes, user profiles, comments, taxonomies and blocks are displayed. There is a new admin section under 'Structure' called 'Display Modes' from where we can add more display modes to control the look and feel of content as well as forms. So not only can we easily manage the display that the end-user sees, but we can also modify the look of forms while data is inputted.
In-Place Content Editing
One of the other features that is in Core now is the ability to edit content in-place. In Drupal 7, this task was accomplished by contributed modules. With the inclusion of it in Core now, it just makes life a lot easier for us, especially when we’ve got tons of stuff to edit and test. There’s an ‘Edit’ button at the top of the toolbar and that displays all the places on the page that we can edit in-place. Editing and displaying of the updated content is now a cinch.
Configurations made easier
As I began to delve further into the configuration section, the one thing that caught my eye was the new 'Configuration synchronization' section under Development. I briefly played around with the feature and my initial reaction is, it's a mild-dose of the Features module. Basically, this new feature allows us to export all the configuration changes made on a site into a nice little tar.gz file. In the scenario above, I just created a new user role called 'Super User' and immediately exported my configurations. Once you extract the file, you can see that there are quite a few .yml format text files , and among them is a file called, 'user.role.super_user.yml', which is the config for my new role. Basically, I can take this and import it into my Staging or Production site, provided they're the same site and share the same UUID. As the Features modules allows us to bundle related configurations and re-use it on ANY site, Drupal's core configuration feature allows us to keep configuration consistent between different environments of the SAME site. As you can see, it won't replace the Features module just yet, but it does offer a great starting step towards a cleaner and more reliable way to transfer and transport configuration among different environments and sites.
In a nutshell, my first encounter with Drupal 8 has been extremely positive. The guys at Drupal have taken stock of what users really need and have tried to incorporate those changes into this new version. I've got lots of roads to traverse with Drupal 8 and I hope to share with you some of those experiences during my future trails.
Visit our Why Drupal 8? site!