Last updated March 22, 2016. Created on February 11, 2005.
Edited by joebachana, ashish_nirmohi, ebobnar, thinkyhead. Log in to edit this page.

In Drupal, the boxes which can be made to appear in various regions of a Drupal website are called Blocks. They are an extensible core feature of Drupal with a simple API provided by the block module. Blocks are similar to "widgets" in content management systems, but are altogether generalized. Blocks can be used to present anything, so just about all content on Drupal sites other than main content, breadcrumbs, and primary/secondary menus is usually a block.

The Block Administration page at administer » site building » blocks lists all blocks in drag-gable table rows so you can just drag them between regions. Each block can be configured with conditions for its visibility (such as which user roles will see it) and on which pages it will appear (using path-matching). You can also use PHP code for more complex conditions, such as only showing a block for User #1.

Out of the box privileged users can create custom blocks (which may include PHP code if the PHP module is enabled) and modules can freely add blocks by implementing hook_block. (For example the Views, Contact, and Menu Blocks modules all add blocks to the site for specific purposes.) Modules may also add custom options to the block configuration forms of their own blocks, or applying to all blocks.

By default, each individual block can appear in only a single region of a given theme. However, if your site uses multiple themes blocks can be set to appear in different regions in each theme. Modules such as Panels, Context, and Section allow blocks to be placed more flexibly, greatly expanding the power of blocks.

Additional Info

This link has more recent information about Drupal's Blocks:

Looking for support? Visit the forums, or join #drupal-support in IRC.


Praveen Dhyani’s picture

I am not getting how to make footer in the drupal. I make header and it is showing but like header footer is not showing.
I am using Drupal 7. I going through Structure-->Blocks-->Footer.

But footer is not showing on My drupal.
Help me

Gaurav Vashishtha’s picture

Dear Praveen;
Change the region of the block. choose the footer.
And block will be reach at footer.

jane-zhaomin0574’s picture

I encounter one big issue by using many blocks.
Now the solution is to delete all blocks, like block for head and block for footer, and put the code of blocks into templates.Not to use any block.
Is it a good solution?
I also want to know when is better to use block instead of putting things into template, when is better no to?
Can anyone help me?

kathweaver’s picture

My blocks are all displaying twice, how do I get rid of the duplicate?

doublejosh’s picture

Ever find a solution to duplicate blocks?

In my case I added a custom block that's needed in just one place, I used the core block settings rather than context (which is use most of the time). The block is showing twice!

From this StackExchange post is seems that with Context 3.0 you have use it exclusively and not mix core blocks.

jhared’s picture

Hi all,

This is my first time to post here in and as you know, i'm new to drupal.

I don't know where to post this. Hope this is the right place.

anyways, I have a question. Is there a way to display a Content Type as a block?
I want to make a Content type named "Application form" and wanted to make it as a block so I can display it on a node (using Composite Layout i think).

I tried using webform, I can display my application form on a node as a block. But the problem is, I want to use workflow to give each application submitted a state and eventually change it (the state of a node). I don't know how to make the workflow work with webform (or is it possible?). So the alternative is to make my application form as a content type and display it as a block, like webform, so I can apply the workflow on this content type.

Now back to my question, Is there a way to display a Content Type as a block?
If there is, can you help/tell me how to do it?

Thanks in advance.


jhared’s picture

Hi again,

Nevermind my previous post. I already found an answer to that. Anyway, someone might have the same problem as mine, so I'll tell you what I did.

I download and installed Form Block module. This module lets you create blocks of Node-Create forms. for more info, see the following link:



Gaurav Vashishtha’s picture

Hello jhared ,

You should make a view and display it as a block and display that node in view and you can use it as a block.’s picture


I have a header consisting of menus and I want to change color of one of these menus. I figured out, that probably I need to write a command into block variables, but I have no idea what to write there. Can you help me?

Thanks for help :)

Toraih’s picture