--- a/includes/message.message_type.inc
+++ b/includes/message.message_type.inc
@@ -152,6 +152,12 @@
       throw new MessageException(format_string('Field %field does not exist.', $params));
     }
 
+    if (!in_array($this->category, $field['bundles']['message_type'])) {
+      // This message category type doesn't support a message text, so return
+      // an empty string.
+      return '';
+    }
+
     if (empty($field['settings']['message_text'])) {
       throw new MessageException(format_string('Field %field is not a message-text.', $params));
     }
