Improving the editor experience (as seen at Drupal Europe). Part one
At Drupal Europe 2018 I had the chance to learn the latest developments regarding the editorial experience in Drupal 8.
Currently Drupal's out of the box content overview screen (admin/content) provides a somewhat Spartan experience. Thus the need arose of a more feature rich content dashboard. With that need in mind, the team of Netnode found inspiration in content planning tools like Buffer, Gathercontent, Trello and Scompler.
This resulted in the Content planner project. This contributed module will provide a content planning dashboard that allows editors to easily find the content they need to work on.
Content planner features
Some of the features of Content planner are:
- a content status giving quick overview of the state the websites content is in
- a calendar that allows scheduling the publication of the nodes
- a recent content list giveing the editor quick access
- a kanban board voor content with columns for the content statuses draft published archived and so forth
De module is quite young and still needs improvement, but it seems useful enough to start using in your projects. By adding Content planner to your website you will probably increase your popularity among your editorial colleagues tenfold!
Another development that could make many editors working with Drupal happy is autosaving forms and resolving conflicts.
It automatically saves the field values every minute when you are filling out a form (for example a node or a contact form). To be able to do this correctly it bypasses all form validation, disables any implemented forms hooks and keeps the form ID intact so that the normal Drupal form editing workflow is not being disturbed.
At the moment the module is not able to autosave when creating a new node because essential information like the node ID is not available at that moment.
Autosave states are saved per user and it's disabled when two users are working on the same content.
If multiple users are working on the same content then conflicts may arise. The conflict module aims at resolving those conflicts by comparing the following versions of the content:
- the initial content;
- the content that's being edited;
- the content that's stored (which could be the content that's been edited in the meantime by another user);
Most fields will be merged automatically but fields that have conflicting values are presented to the user so he can choose how to resolve them. The UI for resolving conflicts is currently being re-evaluated and contributions in this area are more than welcome.
If you are looking for ways to improve the editor experience of your projects then put Autosave form and Conflict on your checklist.