diff --git a/packages/netlify-cms-widget-markdown/src/MarkdownControl/VisualEditor.js b/packages/netlify-cms-widget-markdown/src/MarkdownControl/VisualEditor.js
index db118930..fc3f7b58 100644
--- a/packages/netlify-cms-widget-markdown/src/MarkdownControl/VisualEditor.js
+++ b/packages/netlify-cms-widget-markdown/src/MarkdownControl/VisualEditor.js
@@ -145,25 +145,32 @@ export default class Editor extends React.Component {
     const { getEditorComponents } = this.props;
     const { value } = this.state;
     const nodes = [Text.create('')];
-    const pluginFields = getEditorComponents()
-      .get(pluginId)
-      .get('fields', List());
-    const shortcodeData = pluginFields
-      .map(field => field.get('default'))
-      .filter(val => val)
+
+    /**
+     * Get default values for plugin fields.
+     */
+    const pluginFields = getEditorComponents().getIn([pluginId, 'fields'], List());
+    const defaultValues = pluginFields
       .toMap()
-      .mapKeys((idx, field) => field.get('name'));
+      .mapKeys((_, field) => field.get('name'))
+      .filter(field => field.has('default'))
+      .map(field => field.get('default'));
+
+    /**
+     * Create new shortcode block with default values set.
+     */
     const block = {
       object: 'block',
       type: 'shortcode',
       data: {
         shortcode: pluginId,
         shortcodeNew: true,
-        shortcodeData,
+        shortcodeData: defaultValues,
       },
       isVoid: true,
       nodes,
     };
+
     let change = value.change();
     const { focusBlock } = change.value;