--- simplenews_template.module
+++ (clipboard)
@@ -326,20 +326,28 @@
   // Retrive and filter the header content.
   $header = _simplenews_template_get_header($tid);
   $header = check_markup($header, _simplenews_template_get_header_format($tid), false);
-  
-  // Retrive the body. It is already filtered since it is part of a node.
-  $body .= $node->content['body']['#value'];
-  
+
   // Retrive and filter the footer content.
   $footer = _simplenews_template_get_footer($tid);
   $footer = check_markup($footer, _simplenews_template_get_footer_format($tid), false);
-  
-  // Theme the content
-  $content = theme('simplenews_template_content', $term->name, $node->title, $header, $body, $footer);
-
-  // Update the node's content
-  $node->content['body']['#value'] = $content; 
 
+	if (module_exists('content')) {
+		$node->content['simplenews_header']['#weight'] = -11;
+		$node->content['simplenews_header']['#value'] = $header;
+		$node->content['simplenews_header']['#access'] = 1;
+		$node->content['simplenews_footer']['#weight'] = 11;
+		$node->content['simplenews_footer']['#value'] = $footer;
+		$node->content['simplenews_footer']['#access'] = 1;
+	} else {
+	  // Retrive the body. It is already filtered since it is part of a node.
+	  $body .= $node->content['body']['#value'];
+
+	  // Theme the content
+	  $content = theme('simplenews_template_content', $term->name, $node->title, $header, $body, $footer);
+
+	  // Update the node's content
+	  $node->content['body']['#value'] = $content; 
+	}
 }
 
 
