panel permissions for content editors
Over the past few months our site has undergone a total re-design // upgrade from Drupal 6 => 7. The priority was to rebuild functionality and migrate content quickly and cleanly – permissions schemes and editing privileges for our content contributors took a backseat. Now that the site has been launched and stabilized, we’ve begun to look at some of the tools we used to try to figure out how and if we can train our librarians to use them.
On our old site, we made pretty heavy use of blocks (particularly for sidebar items) – since we had to rebuild these pieces of content anyways, we tried to put them in more flexible containers. We started looking at panels – we found Panopoly. This tool worked really well for us. We could (and did) use panel pages, custom panel layouts, views as panel panes, mini panels as blocks, blocks as mini panels, etc. But when we started to turn over content editing responsibilities to our librarians, we discovered that the default settings were way too powerful for what they needed to do. The interface was overwhelming and privileges were set too high – our content editors had too many options. We had to scale back.
The first step was to lock down Panelizer privileges on the home page – we were clued into this one when one of the librarians told us that she was seeing a “Change Layout” button on the site’s front page. That meant she (or any other content editor) could have changed the layout of the home page with two button clicks. Not good.
We probably could have done this a few different ways – we chose to change the renderer of the home page (built as a panel page) from “In-Place Editor” to “Standard”. Of course this means that we (admins) can’t use the groovy Panelizer interface when we want to edit content on the home page – but that’s cool since we know that those content regions are mini-panels and can be edited elsewhere.
That took care of the home page, but the librarians were still seeing too many options on the other pages (see first screenshot) – we could get rid of the In-Place Editor on all pages, but we’d have to make those configurations on each panel page (or page that had been panelized) and we would lose the slick, drag-and-drop editing interface. So we hit the permissions table.
We found that the permissions were set way too high. In the screenshots that follow, you’ll see what we left on – note that we have 11 roles in the table. The 3rd column from the left is admin, the 4th is editor (librarians) and the last one on the right is portal manager, which we made for development purposes. When we apply these changes to the production site, we’ll set editor privileges to the same as the portal manager on development. So just pay attention to the one on the far right – these are the only permissions we need for our use case: giving librarians permission to to edit layout and add panel content to basic web pages.
All other panel, panel pane, panelizer, etc. privileges in the table need to be locked down. Note that some of the permissions we turned on were specific to a content type (our “Web Page” content) and that this will vary depending on your needs.
Restricting these permissions reduces access to the editing interface. Our librarians will no longer see “gear” buttons – they’ll only see “Customize This Page” and “Change Layout” .
But when they click “Customize This Page” and try to change panel content, they still get bombarded with too many editing options (see the first screenshot) – we can fix that. The Panelizer configuration allows you to adjust settings for allowed content per content authoring method.
Since we’re locking down Panelizer settings for the “Web Page” content type, that’s where we’re headed in the configuration table.
This is where we want to be – lots of boxes to uncheck, lots of buttons to push.
That’s cool – all our librarians need to do is add lists of links, images and text, and (ideally) to be able to reuse the content they create elsewhere.
Here are the settings we used:
The result? Content editors can now…
…choose layout:
…add, edit, move, delete content to the regions within this layout:
…add links, images, text or reusable content:
Note that if they do want to reuse content, they have to specify that in the editor: