diff -rup feeds.b/plugins/FeedsNodeProcessor.inc feeds.a/plugins/FeedsNodeProcessor.inc --- feeds.b/plugins/FeedsNodeProcessor.inc 2013-01-17 19:08:33.000000000 -0500 +++ feeds.a/plugins/FeedsNodeProcessor.inc 2013-01-18 18:45:07.078496638 -0500 @@ -54,7 +54,8 @@ class FeedsNodeProcessor extends FeedsPr protected function entityLoad(FeedsSource $source, $nid) { $node = parent::entityLoad($source, $nid); - if ($this->config['update_existing'] != FEEDS_UPDATE_EXISTING) { + if (($this->config['update_existing'] != FEEDS_UPDATE_EXISTING) && + ($this->config['update_existing'] != FEEDS_SKIP_NEW)){ $node->uid = $this->config['author']; } @@ -68,7 +69,8 @@ class FeedsNodeProcessor extends FeedsPr } // Populate properties that are set by node_object_prepare(). - if ($this->config['update_existing'] == FEEDS_UPDATE_EXISTING) { + if (($this->config['update_existing'] == FEEDS_UPDATE_EXISTING) || + ($this->config['update_existing'] == FEEDS_SKIP_NEW)) { $node->log = 'Updated by FeedsNodeProcessor'; } else { Only in feeds.b/plugins: FeedsNodeProcessor.inc.orig diff -rup feeds.b/plugins/FeedsProcessor.inc feeds.a/plugins/FeedsProcessor.inc --- feeds.b/plugins/FeedsProcessor.inc 2013-01-17 19:08:33.000000000 -0500 +++ feeds.a/plugins/FeedsProcessor.inc 2013-01-18 18:48:56.078480637 -0500 @@ -9,6 +9,7 @@ define('FEEDS_SKIP_EXISTING', 0); define('FEEDS_REPLACE_EXISTING', 1); define('FEEDS_UPDATE_EXISTING', 2); +define('FEEDS_SKIP_NEW', 3); // Default limit for creating items on a page load, not respected by all // processors. @@ -198,6 +199,12 @@ abstract class FeedsProcessor extends Fe continue; } + // Do not proceed if the item does not exist and we are set for update only + $skip_create = $this->config['update_existing'] == FEEDS_SKIP_NEW; + if (empty($entity_id) && $skip_create) { + continue; + } + try { // Load an existing entity. @@ -571,7 +578,8 @@ abstract class FeedsProcessor extends Fe '#options' => array( FEEDS_SKIP_EXISTING => t('Do not update existing @entities', $tokens), FEEDS_REPLACE_EXISTING => t('Replace existing @entities', $tokens), FEEDS_UPDATE_EXISTING => t('Update existing @entities', $tokens), + FEEDS_SKIP_NEW => t('Update existing nodes only (Do not create new nodes)', $tokens), ), '#default_value' => $this->config['update_existing'], );