diff --git a/entityreference.module b/entityreference.module
index 80191d7..c246ad9 100644
--- a/entityreference.module
+++ b/entityreference.module
@@ -1234,6 +1234,11 @@ function entityreference_field_formatter_view($entity_type, $entity, $field, $in
     }
   }
 
+  // Invoke the behaviors to allow them to override the $items status.
+  foreach (entityreference_get_behavior_handlers($field) as $handler) {
+    $handler->alterItems($items, $entity, $field, $display, $langcode);
+  }
+
   switch ($display['type']) {
     case 'entityreference_label':
       $handler = entityreference_get_selection_handler($field, $instance, $entity_type, $entity);
diff --git a/plugins/behavior/abstract.inc b/plugins/behavior/abstract.inc
index de827bc..39046e3 100644
--- a/plugins/behavior/abstract.inc
+++ b/plugins/behavior/abstract.inc
@@ -45,6 +45,11 @@ interface EntityReference_BehaviorHandler {
   public function load($entity_type, $entities, $field, $instances, $langcode, &$items);
 
   /**
+   * Act on $items before rendering.
+   */
+  public function alterItems(&$items, $entity, $field, $display, $langcode);
+
+  /**
    * Alter the empty status of a field item.
    *
    * @see hook_field_is_empty()
@@ -170,6 +175,8 @@ abstract class EntityReference_BehaviorHandler_Abstract implements EntityReferen
 
   public function load($entity_type, $entities, $field, $instances, $langcode, &$items) {}
 
+  public function alterItems(&$items, $entity, $field, $display, $langcode) {}
+
   public function is_empty_alter(&$empty, $item, $field) {}
 
   public function validate($entity_type, $entity, $field, $instance, $langcode, $items, &$errors) {}
