Hide
Hide

This page is not current guidance

For Up to Date guidance please refer to

Help and Guidance


 

Help - Differences between Drupal 7 and 8

hide
Hide

When the time came to develop version 8, Drupal had reached a point where a significant change was due to make things easier to manage and to make it easier to work with other non-Drupal software that was available. So it was completely re-written and the internal data structures were revised. That has meant that it is not possible to just change the software, but a new system has to be created to move to Drupal 8, local software has to be re-coded and the data must be migrated to the new system. In the future the change to Drupal 9 can be achieved without the need for migration. Some of the more significant changes are:

  • Drupal is now coded in object oriented code.
  • Additional software, Composer, is used to manage the Drupal code. This makes it far easier to apply updates with less downtime required.
  • Most of the Drupal utilties have changed and some functionality is no longer available, especially in code code made available by the Drupal community. This has resulted in some features changing and some which we used in Drupal 7 are longer available.
  • URLs in Drupal 7 were specified in a non-standard way, omitting the leading slash. In Drupal 8 you need to specify the leading slash.

As a result of changes to non-GENUKI code we have had to implement things in different ways whilst trying to keep most things the same as before. Some of these changes are ones you will have to accept whilst there are some that we may be able to adjust over time. One important factor that has influenced this is that support for Drupal 7 will cease in June. Some of the changes that you may notice in our configuration are:

  • The standard position for buttons in Drupal forms has always been at the bottom the screen. In Drupal 7 we were able to move the Edit Save button to the top of the screen as the Place nodes had so many fields in them and it was quicker to access there. We have found no option to move it in Drupal 8 so you will now find it at the bottom of the screen.
  • The URL field was one we were able to move to the top of the screen in Drupal 7 but now you will find it down at the bottom. Do remember to set it when creating new nodes.
  • We have changed the internal field structure for holding Topic data. Previously we had around 80 individually named fields, one for each topic type, in Place nodes but a single 'Body' topic in Plain nodes. Over time this hasn't been easy to handle as the fields must be internally handled as different items without being able to code something to handle any Topic. This also meant that you had to have field for all the topic types visible when editing place nodes even for the ones not being used which resulted in big edit screens and it affected performance. In Drupal 8 we have been able to implement a Topic field used by all node types which has sub-fields to hold the topic name and the data. This makes Topics much easier to handle, you only have the Topics types you are actually using, and it only needs database space for these and not the remaining unused topics.
  • We used to have a facility for "search and replace" on multiple nodes at once. The people who wrote that code have not ported it to Drupal 8 and some of the other bulk operations do not seem to be available. We realise this is important functionality to have for our service and have noted it down as an important job to do. It was decided that this could require significant effort so it has been deferred till after we have gone live with Drupal 8.
  • We are no longer using special software to build and configure the edit screens as Drupal itself has changed in this area. The layout is much nearer to the standard Drupal way of doing things.