diff --git a/plugins/context_reaction_block.inc b/plugins/context_reaction_block.inc
index 52f9fe9..ff35d19 100644
--- a/plugins/context_reaction_block.inc
+++ b/plugins/context_reaction_block.inc
@@ -28,6 +28,19 @@ class context_reaction_block extends context_reaction {
       ),
     );
 
+    $options = $this->fetch_from_context($context);
+    
+    $form['disable_core_blocks'] = array(
+      '#title' => t('Core block system'),
+      '#type' => 'select',
+      '#options' => array(
+        0 => t('Enabled'),
+        1 => t('Disabled'),
+      ),
+      '#default_value' => isset($options['disable_core_blocks']) ? $options['disable_core_blocks'] : 0,
+      '#description' => t('When disabled, regions configured within this context will be populated with blocks from context only.')
+    );
+
     /**
      * Selector.
      */
@@ -106,7 +119,10 @@ class context_reaction_block extends context_reaction {
         }
       }
     }
-    return array('blocks' => $blocks);
+    return array(
+      'disable_core_blocks' => $values['disable_core_blocks'],
+      'blocks' => $blocks,
+    );
   }
 
   /**
@@ -216,11 +232,23 @@ class context_reaction_block extends context_reaction {
     // Populate all block regions
     $all_regions = system_region_list($theme);
 
+    // Check for regions with disabled core blocks
+    $core_disabled_regions = array();
+    $contexts = context_active_contexts();
+    foreach ($contexts as $context) {
+      $options = $this->fetch_from_context($context);
+      if (!empty($options['disable_core_blocks'])) {
+        foreach ($options['blocks'] as $block) {
+          $core_disabled_regions[$block['region']] = TRUE;
+        }
+      }
+    }
+
     // Load all region content assigned via blocks.
     foreach (array_keys($all_regions) as $region) {
       if ($this->is_enabled_region($region)) {
         if ($blocks = $this->block_get_blocks_by_region($region)) {
-          $page[$region] = isset($page[$region]) ? array_merge($page[$region], $blocks) : $blocks;
+          $page[$region] = isset($page[$region]) ? (isset($core_disabled_regions[$region]) ? $blocks : array_merge($page[$region], $blocks)) : $blocks;
         }
       }
     }
