diff --git a/splash.admin.inc b/splash.admin.inc
index 8c09923..b4c71f0 100644
--- a/splash.admin.inc
+++ b/splash.admin.inc
@@ -2,6 +2,7 @@
 
 function splash_admin_when() {
 	$splash_when = variable_get('splash_when', array());
+  $all_or_front = $splash_when['all_or_front'];
 
 	$form['general'] = array(
 		'#type' => 'fieldset',
@@ -26,6 +27,12 @@ function splash_admin_when() {
 		'#description' => t('Reset the name of the cookie to force the display of the splash on next visit.  This is useful to preview changes to the splash content in development.'),
 		'#default_value' => 0,
 	);
+  $form['general']['all_or_front'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Display on all pages, not just the front page'),
+    '#description' => t('Select this option to display the splash page to site visitors on whatever page they visit first. Leave unchecked to only trigger the splash page when users directly visit the front page.'),
+    '#default_value' => $all_or_front,
+  );
 	
 	if (module_exists('condition')) {
 		$form = array_merge($form, module_invoke('condition', 'selection_form', $splash_when['conditions']));
@@ -54,6 +61,13 @@ function splash_admin_when_submit($form, &$form_state) {
 			$splash_when['cookie'] = 'splash_cookie_'.time();
 		}
 		
+    if ($form_state['values']['all_or_front']) {
+      $splash_when['all_or_front'] = TRUE;
+    }
+    else {
+      $splash_when['all_or_front'] = FALSE;
+    }
+
 		if (module_exists('condition')) {
 			$splash_when['conditions'] = $form_state['values']['conditions'];
 		}
diff --git a/splash.module b/splash.module
index 0df1656..ef46f9b 100644
--- a/splash.module
+++ b/splash.module
@@ -80,9 +80,9 @@ function splash_init() {
 		$splash = TRUE;
     $reason = 'Someone knew this special way to force splash display';
   // We are not on the front page (cannot use drupal_is_front_page here)
-	} elseif ($_GET['q'] != drupal_get_normal_path(variable_get('site_frontpage', 'node'))) {
-  	$splash = FALSE;
-  	$reason = 'We are not on the front page';
+  } elseif ($_GET['q'] != drupal_get_normal_path(variable_get('site_frontpage', 'node')) && $splash_when['all_or_front'] == FALSE) {
+    $splash = FALSE;
+    $reason = 'We are not on the front page';
   // We come from an internal page
   } elseif (($parsed_url = parse_url($base_url)) && stristr(referer_uri(), $parsed_url['host'])) {
   	$splash = FALSE;
@@ -212,7 +212,7 @@ function splash_init() {
 function splash_help($path, $arg) {
   switch ($path) {
     case 'admin/settings/splash':
-      return '<p>'. t('Install the !condition module to add additional conditions for displaying the splash page. Please note that the splash page is never displayed in the following conditions: <ul><li>The requested page is not the front page.</li><li>The visitor returns to the frontpage from another page on the same site.</li><li>The splash page is the same as the front page.</li><li>The visitors added <code>?nosplash</code> to the URL.</li></ul>', array('!condition' => l(t('Condition'), 'http://drupal.org/project/condition'))).'</p>';
+      return '<p>'. t('Install the !condition module to add additional conditions for displaying the splash page. Please note that the splash page is never displayed in the following conditions: <ul><li>The visitor returns to the frontpage from another page on the same site.</li><li>The splash page is the same as the front page.</li><li>The visitors added <code>?nosplash</code> to the URL.</li></ul>', array('!condition' => l(t('Condition'), 'http://drupal.org/project/condition'))).'</p>';
     case 'admin/settings/splash/what':
       return '<p>'. t('What will be displayed as splash page? You can enter multiple internal paths or full URLs to pick from either in random or in sequence mode. Or enter some text and choose if should be displayed in the site template or full screen.').'</p>';
     case 'admin/settings/splash/how':
