public function AliasStorage::delete in Drupal 8
Deletes a URL alias.
The default implementation performs case-insensitive matching on the 'source' and 'alias' strings.
Parameters
array $conditions: An array of criteria.
Overrides AliasStorageInterface::delete
File
- core/
lib/ Drupal/ Core/ Path/ AliasStorage.php, line 162
Class
- AliasStorage
- Provides a class for CRUD operations on path aliases.
Namespace
Drupal\Core\PathCode
public function delete($conditions) {
$storage = $this
->getPathAliasEntityStorage();
$query = $storage
->getQuery();
// API functions should be able to access all entities regardless of access
// restrictions. Those need to happen on a higher level.
$query
->accessCheck(FALSE);
foreach ($conditions as $field => $value) {
if ($field === 'source') {
$field = 'path';
}
elseif ($field === 'pid') {
$field = 'id';
}
$query
->condition($field, $value, '=');
}
$result = $query
->execute();
$storage
->delete($storage
->loadMultiple($result));
}