Custom module and block API
Let you try with this code. Clear performance cache.

function example_block_info() {
  $blocks['my-block-id'] = array(
    'info' =&gt; t('Block Name'),
  );
  return $blocks;
}

/**
 * Implementation of hook_block_view().
 */
function example_block_view($delta='') {
  $block = array();
  switch ($delta) {
    case 'my-block-id':
      $block['subject'] = t('Block Name');
      $block['content'] = example_contents();
      break;
  }
  return $block;
}

/**
 * custom html block
 * @return string
 */
function example_contents() {
  return '
    &lt;/p&gt;&lt;div class="body"&gt;
      Hello World, this is a example custom Block
    &lt;/div&gt;&lt;p&gt;
  ';
}


For more info see this http://www.summasolutions.net/blogposts/how-create-basic-block-code-new-drupal-7