Locating Block Configurations

As is typical in Drupal, there's more than one way to get into a block's configuration panel.

Via the Admin Menu

A permitted user will always be able to go to Admin > Structure > Blocks to access the block management screen.

Here, to access the configuration screen for a specific block, just click the configure link for the block in question.

Via a Contextual Link

Hovering over a block will trigger a contextual menu to to appear in the upper right corner of the block you're hovering on. This menu will appear as a little, clickable gear. When you click on it, it will expand and give you, at a minimum, a menu item that says Configure Block. Clicking on the Configure Block menu item will open that block's configuration settings.

Standard Configuration Options

All blocks contain, at a minimum, the following configuration options.

Block Title

Block titles do not have to be added. If you wish to not display a title just enter <none>. Make sure you include the <>, otherwise your block title will be "none".

Region Settings

A region is an area within a theme where a block is placed, such as Sidebar or Main Content.

For our OSU Drupal 7 distribution, the Doug Fir option applies for audience facing content and the Adminimal option applies for all administative pages.

Visibility Settings

Visibility Settings are different ways that you can show or hide your block, based on different situations. Let's take a closer look here...

Page Visibility Settings

Within the Pages visibility settings tab you can configure your block to only show on particular pages, or even a range of pages.

To show a block on specific pages:

First, select the Only the listed pages option.

For the front page, just enter <front>. Make sure to include the <>.

For all other pages, you'll need to determine the path. To do this, let's say that there's a node in an example site that is located at...

http://examplesite.oregonstate.edu/about

...the base URL is the examplesite.oregonstate.edu and the URL path is about. In our OSU Drupal 7 environment, anything that comes after the .edu is a URL path.

If we take the hypothetical about URL path and put it into the text box under our front page configuration, then we have configured that block to show on only the front page and the page that has the about URL path.

This can be taken even further. For example, if you had several pages that were nested under the about URL path, you could quickly include them all by using a wildcard, like this about/*.

Content Type Visibility Settings

A block can be configured to show up on a certain content type, or several different content types.

Within the Content Types visibility settings tab, just check the boxes of the content types that you want the block to show on. Doing this will show the block on those particular content types and hide the block on all other content types.

Role Visibility Settings

Blocks can be configured to show only to specific roles.

With the Roles visibility settings tab, select the roles that should see the block. Take care with this. You can actually end up hiding the block from yourself if you select the role you're using.

User Defined Visibility Settings

In the Users visibility settings tab, a block can be set up so that a user has the ability to view or hide the block.

Module-Defined Block Configurations

Not all blocks are built the same. Some blocks that are created by modules may have some additional configurations present.

In our example above, which is a block that is provide by the Nice Menus module, we see five additional menu related fields: Menu Name, Menu Parent, Menu Depth, Menu Style, and Respect "Show as expanded" Option.

Caveat

What if you want to show the same block in different regions on different pages, though? Is this possible?

No, it's not possible. Not using the configurations available here, at least.

This situation is really common in big sites that have multiple sections that are laid out in different ways, or in sites that use Organic Groups. This is where we need to move to a more robust tool to do our block configuration and layout - the Context module.