How do I determine a page's content type for non-node pages?
Use template_preprocess() for detecting node on page and pass additional variable as flag to template file, like:

$variables['display_region'] = TRUE;


Maybe Panels can help you too.