Custom "normal" page in module Is it possible to create a normal content page in a module? At the moment I only know the $form type. But I need to add a page with some statistics.

Or is there a way to add normal content to a hook_form?

At the moment I have:

.module file:

$items['admin/config/services/push_notifications/stats'] = array(
'type' =&gt; MENU_SUGGESTED_ITEM,
'title' =&gt; 'Push messages stats',
'access arguments' =&gt; array('Push messages stats'),
'page callback' =&gt; 'drupal_get_form',
'page arguments' =&gt; array('push_notifications_stats_form'),
'description' =&gt; 'Push messages stats',
'file' =&gt; 'push_notifications.admin.inc',
'file path' =&gt; drupal_get_path('module', 'push_notifications') . '/includes',
'weight' =&gt; 80,
);


And in the .admin file:

function push_notifications_stats_form($form, &amp;$form_state) {
$form = array();
$id = $_GET['id'];

$form['id'] = array(
'#type' =&gt; 'item',
'#title' =&gt; 'Application ID',
'#description' =&gt; t('The application ID you are viewing: @appId', array('@appId' =&gt; $id)),
);  

return $form;


}
what you want is hook_menu:
  function pushnotifications_menu() {
    $items['admin/config/services/push_notifications/stats'] = array(
      'page callback' =&gt; 'yourverycustomcallbackforpushnotfiers_abc_view',
    );
    return $items;
  }

  function yourverycustomcallbackforpushnotfiers_abc_view($ghi = 0, $jkl = '') {
    // all your logic here
  }

btw: DO NOT DO THIS!!:
$id = $_GET['id'];
Sse drupal_get_query_parameters() instead, if you really have to fiddle with it directly. Otherwise use $args.