diff --git a/config/schema/page_manager.schema.yml b/config/schema/page_manager.schema.yml
index 1fe3464..e33aff4 100644
--- a/config/schema/page_manager.schema.yml
+++ b/config/schema/page_manager.schema.yml
@@ -131,6 +131,9 @@ display_variant.plugin.block_display:
     page_title:
       type: label
       label: 'Page title'
+    force_simplepage:
+      type: boolean
+      label: 'Force SimplePage variant'
 
 display_variant.plugin.http_status_code:
   type: display_variant.plugin
diff --git a/page_manager.services.yml b/page_manager.services.yml
index b1669e7..6274070 100644
--- a/page_manager.services.yml
+++ b/page_manager.services.yml
@@ -33,3 +33,7 @@ services:
     class: Drupal\page_manager\Entity\PageAccessCheck
     tags:
       - { name: access_check, applies_to: _page_access }
+  page_manager.page_display_variant_subscriber:
+    class: Drupal\page_manager\EventSubscriber\ForceSimplePageVariantSubscriber
+    tags:
+      - { name: event_subscriber }
diff --git a/src/EventSubscriber/ForceSimplePageVariantSubscriber.php b/src/EventSubscriber/ForceSimplePageVariantSubscriber.php
new file mode 100644
index 0000000..87ac9d9
--- /dev/null
+++ b/src/EventSubscriber/ForceSimplePageVariantSubscriber.php
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\page_manager\EventSubscriber\ForceSimplePageVariantSubscriber.
+ */
+
+namespace Drupal\page_manager\EventSubscriber;
+
+use Drupal\Core\Render\PageDisplayVariantSelectionEvent;
+use Drupal\Core\Render\RenderEvents;
+use Symfony\Component\EventDispatcher\EventSubscriberInterface;
+
+/**
+ * Force Renderer to select SimplePage variant.
+ *
+ * Disable any page variant other then SimplePage, i.e. BlockPageVariant.
+ */
+class ForceSimplePageVariantSubscriber implements EventSubscriberInterface {
+
+  /**
+   * Selects the block page display variant.
+   *
+   * @param \Drupal\Core\Render\PageDisplayVariantSelectionEvent $event
+   *   The event to process.
+   */
+  public function onSelectPageDisplayVariant(PageDisplayVariantSelectionEvent $event) {
+    // If this is a page manager page, the route match will have the entity as
+    // a parameter.
+    /** @var \Drupal\page_manager\PageInterface $page */
+    if ($page = $event->getRouteMatch()->getParameter('page_manager_page')) {
+      $routes = \Drupal::service('router.route_provider')->getRoutesByPattern($page->getPath())->all();
+      $route = reset($routes);
+
+      // Find the selected variant for this page.
+      $variant_id = $route->getDefault('page_manager_page_variant');
+      if ($variant_id && $variant = $page->getVariant($variant_id)) {
+        // Check to see if this variant is configured to disable blocks.
+        $settings = $variant->get('variant_settings');
+        if (isset($settings['force_simplepage']) && $settings['force_simplepage']) {
+          // If so, set the page display variant to use the simple page, which
+          // replaces the block-based page display.
+          $event->setPluginId('simple_page');
+          $event->stopPropagation();
+        }
+      }
+    }
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public static function getSubscribedEvents() {
+    $events[RenderEvents::SELECT_PAGE_DISPLAY_VARIANT][] = [
+      'onSelectPageDisplayVariant',
+      -10
+    ];
+    return $events;
+  }
+
+}
diff --git a/src/Plugin/DisplayVariant/PageBlockDisplayVariant.php b/src/Plugin/DisplayVariant/PageBlockDisplayVariant.php
index 4b704d0..7e14aaf 100644
--- a/src/Plugin/DisplayVariant/PageBlockDisplayVariant.php
+++ b/src/Plugin/DisplayVariant/PageBlockDisplayVariant.php
@@ -232,6 +232,13 @@ class PageBlockDisplayVariant extends BlockDisplayVariant implements PluginWizar
       '#value' => $this->configuration['uuid'] ?: $this->uuidGenerator->generate(),
     ];
 
+    $form['force_simplepage'] = [
+      '#type' => 'checkbox',
+      '#default_value' => $this->configuration['force_simplepage'] ?: FALSE,
+      '#title' => t('Force SimplePage Variant'),
+      '#description' => t('Check this to disable any other variant rather then SimplePage, i.e. to avoid BlockPageVariant to render theme page regions and their blocks. Note that some themes support this setting better than others. If in doubt, try with stock themes to see.'),
+    ];
+
     return $form;
   }
 
@@ -247,6 +254,8 @@ class PageBlockDisplayVariant extends BlockDisplayVariant implements PluginWizar
     if ($form_state->hasValue('uuid')) {
       $this->configuration['uuid'] = $form_state->getValue('uuid');
     }
+
+    $this->configuration['force_simplepage'] = $form_state->getValue('force_simplepage', FALSE);
   }
 
   /**
@@ -267,6 +276,7 @@ class PageBlockDisplayVariant extends BlockDisplayVariant implements PluginWizar
   public function defaultConfiguration() {
     return parent::defaultConfiguration() + [
       'page_title' => '',
+      'force_simplepage' => FALSE,
     ];
   }
 
