Using a template for a custom admin page made with hook_menu
Have a look at this question on stackoverflow: https://stackoverflow.com/questions/5305114/drupal-7-how-to-load-a-template-file-from-a-module

It basically comes down to this:


Implement hook_theme()
Create the template file
At the end of your newsletter_admin_content_block call theme() with your template key (as defined in hook_theme()) as first argument and any additional variables that you need in your template as an array.


Example:

function hook_theme($existing, $type, $theme, $path) {
  return array(
    'newsletter_admin_content_template' =&gt; array(
      'variables' =&gt; array('var1' =&gt; NULL, 'var2' =&gt; NULL, ...),
      'template' =&gt; 'newsletter-admin-content-template'
    ),
  ),
}


And at the end of your menu callback:

return theme('newsletter_admin_content_template', array(
  'var1' =&gt; $var1,
  'var2' =&gt; $var2,
  ...
));