diff --git a/plugins/FeedsNodeProcessor.inc b/plugins/FeedsNodeProcessor.inc
index 2df4b35b56abdeb7c7e782d6bbfee765bf1123fc..41ec2753e4b9fde66f775a8a8bf54c8a1b871312 100644
--- a/plugins/FeedsNodeProcessor.inc
+++ b/plugins/FeedsNodeProcessor.inc
@@ -219,6 +219,17 @@ class FeedsNodeProcessor extends FeedsProcessor {
           $target_node->feeds['suppress_import'] = TRUE;
         }
         break;
+      case 'path_alias':
+        $target_node->path = array();
+
+        // Check for existing aliases.
+        if (!empty($target_node->nid)) {
+          if ($path = path_load('node/' . $target_node->nid)) {
+            $target_node->path = $path;
+          }
+        }
+        $target_node->path['alias'] = $value;
+        break;
       default:
         parent::setTargetElement($source, $target_node, $target_element, $value);
         break;
@@ -280,6 +291,13 @@ class FeedsNodeProcessor extends FeedsProcessor {
       );
     }
 
+    // If path is enabled expose path alias.
+    if (module_exists('path')) {
+      $targets['path_alias'] = array(
+        'name' => t('Path alias'),
+        'description' => t('URL path alias of the node.'),
+      );
+    }
 
     // If the target content type is a Feed node, expose its source field.
     if ($id = feeds_get_importer_id($this->config['content_type'])) {
diff --git a/plugins/FeedsTermProcessor.inc b/plugins/FeedsTermProcessor.inc
index 83183b05e9aa027c7f9de52eb19d50eb37b267c7..04d96766103f70f73f78283def724bf5daf06de3 100644
--- a/plugins/FeedsTermProcessor.inc
+++ b/plugins/FeedsTermProcessor.inc
@@ -174,6 +174,28 @@ class FeedsTermProcessor extends FeedsProcessor {
     }
   }
 
+   /**
+   * Override setTargetElement to operate on a target item that is a taxonomy term.
+   */
+  public function setTargetElement(FeedsSource $source, $target_term, $target_element, $value) {
+    switch ($target_element) {
+      case 'path_alias':
+        $target_term->path = array();
+
+        // Check for existing aliases.
+        if (!empty($target_term->tid)) {
+          if ($path = path_load('taxonomy/term/' . $target_term->tid)) {
+            $target_term->path = $path;
+          }
+        }
+        $target_term->path['alias'] = $value;
+        break;
+      default:
+        parent::setTargetElement($source, $target_term, $target_element, $value);
+        break;
+    }
+  }
+
   /**
    * Return available mapping targets.
    */
@@ -205,6 +227,15 @@ class FeedsTermProcessor extends FeedsProcessor {
         'description' => t('Description of the taxonomy term.'),
        ),
     );
+
+    // If path is enabled expose path alias.
+    if (module_exists('path')) {
+      $targets['path_alias'] = array(
+        'name' => t('Path alias'),
+        'description' => t('URL path alias for the taxonomy term.'),
+      );
+    }
+
     // Let implementers of hook_feeds_term_processor_targets() add their targets.
     try {
       self::loadMappers();