How to display only one block in custom page using tpl? How to show only block and hide all other menus,blocks etc.,
This is my code

function example_menu() {
  $items['appointcal'] = array(
    'page callback' =&gt; 'example_show',
    'access callback' =&gt; TRUE,
     'type' =&gt; MENU_CALLBACK,
   );
     return $items;
}

function example_show() {
  return theme('example_cal');
}

function example_theme() {
  return array(
    'example_cal' =&gt; array(
      'render element' =&gt; 'elements',
      'template' =&gt; 'templates/examplecal'
    )
  );
}


My examplecal.tpl.php is

&lt;div&gt;
  &lt;?php
    $block = module_invoke('views', 'block_view', 'example-block');
    print render($block['content']);
  ?&gt;
&lt;/div&gt;




There is need to show only region that is in red color and hide all other regions.
You can use Context module for this purpose. It provides the same functionality as you require.

Note:  If you don't want to use any extra module, then it can also be done simply through block configuration setting. There are three options to control the block visibility.