diff --git a/scheduler.module b/scheduler.module
index 1e7c0c4..370bf0c 100644
--- a/scheduler.module
+++ b/scheduler.module

@@ -172,6 +178,25 @@ function scheduler_form_node_form_alter(&$form, FormStateInterface $form_state)
     $form['publish_on']['widget'][0]['value']['#required'] = FALSE;
     $form['unpublish_on']['widget'][0]['value']['#required'] = FALSE;
   }
+
+  // Check which widget type is set for the scheduler fields, and give a warning
+  // if the wrong one has been set and provide a hint and link to fix it.
+  $storage_form_display = $form_state->getStorage()['form_display'];
+  $content = $storage_form_display->get('content');
+  $pluginDefinitions = $storage_form_display->get('pluginManager')->getDefinitions();
+  $correct_widget_id = 'datetime_timestamp_no_default';
+  foreach(['publish_on' => $publishing_enabled, 'unpublish_on' => $unpublishing_enabled] as $field => $enabled) {
+    $actual_widget_id = $content[$field]['type'];
+    if ($enabled && $actual_widget_id != $correct_widget_id) {
+      drupal_set_message(t('The widget for field %field is incorrectly set to %wrong. This should be changed to %correct by an admin user via <a href="@link">content type form display</a>', [
+        '%field' => (string)$form[$field]['widget']['#title'],
+        '%correct' => (string)$pluginDefinitions[$correct_widget_id]['label'],
+        '%wrong' => (string)$pluginDefinitions[$actual_widget_id]['label'],
+//         '@link' => Url::fromRoute('entity.node_type.edit_form', array('node_type' => $type->get('type')))->toString(), // this route is defined
+        '@link' => Url::fromRoute('entity.node_type.form_display', ['node_type' => $type->get('type')])->toString(), // this route is missing
+      ]), 'warning', FALSE);
+    }
+  }
 }
 
 /**
diff --git a/scheduler.routing.yml b/scheduler.routing.yml
index 33774ef..5e02834 100644
--- a/scheduler.routing.yml
+++ b/scheduler.routing.yml
@@ -25,3 +25,11 @@ scheduler.lightweight_cron:
     no_cache: TRUE
   requirements:
     _custom_access: '\Drupal\scheduler\Controller\LightweightCronController::access'
+
+entity.node_type.form_display:
+  path: '/admin/structure/types/manage/{node_type}/form-display'
+  defaults:
+    _entity_form: 'node_type.edit'
+  requirements:
+    _permission: 'administer content types'
+
