diff --git a/plugins/facetapi/adapter.inc b/plugins/facetapi/adapter.inc
index 0a18718..54a9db9 100644
--- a/plugins/facetapi/adapter.inc
+++ b/plugins/facetapi/adapter.inc
@@ -1131,11 +1131,20 @@ class FacetapiFacetProcessor {
           $this->build = $this->processHierarchy($this->build);
         }
         $this->processQueryStrings($this->build);
+        $this->postProcess();
       }
     }
   }
 
   /**
+   * Post-processes the facet items.
+   */
+  public function postProcess() {
+    // Allow the url-processor to post-process the facet build object.
+    $this->facet->getAdapter()->getUrlProcessor()->postProcessFacetBuild($this->facet->getFacet(), $this->build);
+  }
+
+  /**
    * Helper function to get the facet's active items.
    *
    * @return array
diff --git a/plugins/facetapi/url_processor.inc b/plugins/facetapi/url_processor.inc
index f71590f..ded09b1 100644
--- a/plugins/facetapi/url_processor.inc
+++ b/plugins/facetapi/url_processor.inc
@@ -126,4 +126,12 @@ abstract class FacetapiUrlProcessor {
   public function getFilterKey() {
     return $this->filterKey;
   }
+
+  /**
+   * Allow the url-processor to post-process the facet build object.
+   * In example, modify it's path or query parameters.
+   */
+  public function postProcessFacetBuild(array $facet, array $build) {
+
+  }
 }
