diff --git a/feeds.module b/feeds.module
index cba702d..3ef589f 100644
--- a/feeds.module
+++ b/feeds.module
@@ -43,6 +43,33 @@ function feeds_hook_info() {
 }
 
 /**
+ * Implements hook_init().
+ */
+function feeds_init() {
+
+  // We need to get and cache the entity_info to work with the CTools plugins.
+  feeds_get_cached_entity_info(entity_get_info());
+}
+
+/**
+ * Create a static cache of the entity info so that the CTools plugins
+ * works when a module is installed.
+ *
+ * @param null $set_cache
+ *   The entity information.
+ *
+ * @return array
+ *   The entity information.
+ */
+function feeds_get_cached_entity_info($set_cache = NULL) {
+  static $cached_entity_info = NULL;
+  if ($set_cache) {
+    $cached_entity_info = $set_cache;
+  }
+  return $cached_entity_info;
+}
+
+/**
  * Implements hook_cron().
  */
 function feeds_cron() {
diff --git a/feeds.plugins.inc b/feeds.plugins.inc
index fa45137..a213279 100644
--- a/feeds.plugins.inc
+++ b/feeds.plugins.inc
@@ -167,7 +167,7 @@ function _feeds_feeds_plugins() {
     );
   }
   if (module_exists('entity')) {
-    foreach (entity_get_info() as $type => $entity_info) {
+    foreach (feeds_get_cached_entity_info() as $type => $entity_info) {
       // @todo: Test for saving and whatever else necessary?
       if (entity_type_supports($type, 'create')) {
         $info['FeedsEntityProcessor' . drupal_ucfirst($type)] = array(
