diff --git a/profiler_api.inc b/profiler_api.inc
index ce0e9c5..a216cfe 100644
--- a/profiler_api.inc
+++ b/profiler_api.inc
@@ -311,6 +311,14 @@ function profiler_install_nodes($nodes, $config, &$identifiers) {
         continue;
       }
     }
+
+    // Set a parent menu link id if one was specified.
+    if (isset($properties['menu']['parent'])) {
+      if (isset($identifiers['nodes'][$properties['menu']['parent']])) {
+        $properties['menu']['plid'] = $identifiers['nodes'][$properties['menu']['parent']]->menu['mlid'];
+      }
+    }
+
     $default = array(
       'nid' => NULL,
       'title' => '',
@@ -324,6 +332,9 @@ function profiler_install_nodes($nodes, $config, &$identifiers) {
     );
     $node = (object) array_merge($default, $properties);
     node_save($node);
+
+    // Save the node to the identifiers array so other nodes can reference it.
+    $identifiers['nodes'][$nid] = $node;
   }
 }
