本文整理汇总了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);
}