public function SelectionBase::getReferencableEntities

Implements SelectionInterface::getReferencableEntities().

Overrides SelectionInterface::getReferencableEntities

2 calls to SelectionBase::getReferencableEntities()
SelectionBase::validateAutocompleteInput in drupal/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/entity_reference/selection/SelectionBase.php
Implements SelectionInterface::validateAutocompleteInput().
TermSelection::getReferencableEntities in drupal/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/entity_reference/selection/TermSelection.php
Overrides SelectionBase::getReferencableEntities().
1 method overrides SelectionBase::getReferencableEntities()
TermSelection::getReferencableEntities in drupal/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/entity_reference/selection/TermSelection.php
Overrides SelectionBase::getReferencableEntities().

File

drupal/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/entity_reference/selection/SelectionBase.php, line 167
Contains \Drupal\entity_reference\Plugin\entity_reference\selection\SelectionBase.

Class

SelectionBase
Plugin implementation of the 'selection' entity_reference.

Namespace

Drupal\entity_reference\Plugin\entity_reference\selection

Code

public function getReferencableEntities($match = NULL, $match_operator = 'CONTAINS', $limit = 0) {
  $target_type = $this->field['settings']['target_type'];
  $query = $this
    ->buildEntityQuery($match, $match_operator);
  if ($limit > 0) {
    $query
      ->range(0, $limit);
  }
  $result = $query
    ->execute();
  if (empty($result)) {
    return array();
  }
  $options = array();
  $entities = entity_load_multiple($target_type, $result);
  foreach ($entities as $entity_id => $entity) {
    $bundle = $entity
      ->bundle();
    $options[$bundle][$entity_id] = check_plain($entity
      ->label());
  }
  return $options;
}