Add Custom Block Regions to Drupal Themes

How-to add custom regions for displaying block content to Drupal themes.

Create and/or add the following to template.php

<span style="color: #369;">&lt;?php</span><span style="color: #000;">&nbsp;
</span><span style="color: #555;">/**
*&nbsp;Creates&nbsp;new&nbsp;regions&nbsp;which&nbsp;can&nbsp;be&nbsp;used&nbsp;to&nbsp;display&nbsp;blocks&nbsp;content.
*/
</span><span style="color: #000;">
</span><span style="color: #00C;">function</span><span style="color: #000;">&nbsp;</span><span style="color: #000;">your_theme_regions</span><span style="color: #000;">()&nbsp;{
&nbsp;&nbsp;</span><span style="color: #00C;">return</span><span style="color: #000;">&nbsp;</span><span style="color: #00C;">array</span><span style="color: #000;">(
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'right'</span><span style="color: #000;">&nbsp;=&gt;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'right&nbsp;sidebar'</span><span style="color: #000;">),
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'left'</span><span style="color: #000;">&nbsp;&nbsp;=&gt;&nbsp;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'left&nbsp;sidebar'</span><span style="color: #000;">),
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'content'</span><span style="color: #000;">&nbsp;=&gt;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'content'</span><span style="color: #000;">),
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'header'</span><span style="color: #000;">&nbsp;=&gt;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'header'</span><span style="color: #000;">),
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'footer'</span><span style="color: #000;">&nbsp;=&gt;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'footer'</span><span style="color: #000;">),
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #F39;">'custom'</span><span style="color: #000;">&nbsp;=&gt;&nbsp;</span><span style="color: #000;">t</span><span style="color: #000;">(</span><span style="color: #F39;">'custom&nbsp;region'</span><span style="color: #000;">),&nbsp;</span><span style="color: #555;">//&nbsp;Custom&nbsp;region
</span><span style="color: #000;">&nbsp;&nbsp;);
}&nbsp;</span><span style="color: #555;">//&nbsp;End&nbsp;your_theme_regions()
</span><span style="color: #369;">?&gt;</span>

To display the output of your new region, use

<span style="color: #369;">&lt;?php</span><span style="color: #000;">&nbsp;</span><span style="color: #00C;">print</span><span style="color: #000;">&nbsp;</span><span style="color: #000;">$custom</span><span style="color: #000;">;&nbsp;</span><span style="color: #369;">?&gt;</span>

or

<span style="color: #369;">&lt;?php</span><span style="color: #000;">&nbsp;</span><span style="color: #00C;">if</span><span style="color: #000;">&nbsp;(</span><span style="color: #000;">$custom</span><span style="color: #000;">)&nbsp;</span><span style="color: #00C;">print</span><span style="color: #000;">&nbsp;</span><span style="color: #000;">$custom</span><span style="color: #000;">;&nbsp;</span><span style="color: #369;">?&gt;</span>