diff --git a/freelinking.module b/freelinking.module
index bf32ca7..c9efb20 100644
--- a/freelinking.module
+++ b/freelinking.module
@@ -106,10 +106,12 @@ function freelinking_filter($op, $delta = 0, $format = -1,
  * Include plugins/*.inc plugins
  */
 function freelinking_freelinking() {
+  static $freelinking;
+  if ($freelinking) return $freelinking;
   $files = file_scan_directory(
-    drupal_get_path('module', 'freelinking') . '/plugins/', '.inc');
+    drupal_get_path('module', 'freelinking') . '/plugins', '.inc');
   foreach ($files as $absolute => $file) {
-    require $absolute;
+    require_once $absolute;
   }
   foreach ($freelinking as $plugin => $definition) {
     if (!$definition['settings']) {
