本文整理匯總了PHP中Drupal\Core\Entity\EntityInterface::getSelectionConditions方法的典型用法代碼示例。如果您正苦於以下問題:PHP EntityInterface::getSelectionConditions方法的具體用法?PHP EntityInterface::getSelectionConditions怎麽用?PHP EntityInterface::getSelectionConditions使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Drupal\Core\Entity\EntityInterface
的用法示例。
在下文中一共展示了EntityInterface::getSelectionConditions方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $entity)
{
/* @var \Drupal\pathauto\PathautoPatternInterface $entity */
$row['label'] = $entity->label();
$row['patern']['#markup'] = $entity->getPattern();
$row['type']['#markup'] = $entity->getAliasType()->getLabel();
$row['conditions']['#theme'] = 'item_list';
foreach ($entity->getSelectionConditions() as $condition) {
$row['conditions']['#items'][] = $condition->summary();
}
return $row + parent::buildRow($entity);
}
示例2: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
/** @var \Drupal\page_manager\PageVariantInterface $entity */
if ($operation === 'view') {
$contexts = $entity->getContexts();
$conditions = $entity->getSelectionConditions();
foreach ($conditions as $condition) {
if ($condition instanceof ContextAwarePluginInterface) {
$this->contextHandler()->applyContextMapping($condition, $contexts);
}
}
return AccessResult::allowedIf($this->resolveConditions($conditions, $entity->getSelectionLogic()));
}
return parent::checkAccess($entity, $operation, $account);
}