public function AliasStorage::lookupPathAlias
public AliasStorage::lookupPathAlias($path, $langcode)
Returns an alias of Drupal system URL.
The default implementation performs case-insensitive matching on the 'source' and 'alias' strings.
Parameters
string $path: The path to investigate for corresponding path aliases.
string $langcode: Language code to search the path with. If there's no path defined for that language it will search paths without language.
Return value
string|false A path alias, or FALSE if no path was found.
Overrides AliasStorageInterface::lookupPathAlias
File
- core/lib/Drupal/Core/Path/AliasStorage.php, line 228
Class
- AliasStorage
- Provides a class for CRUD operations on path aliases.
Namespace
Drupal\Core\PathCode
public function lookupPathAlias($path, $langcode) { $source = $this->connection->escapeLike($path); $langcode_list = [$langcode, LanguageInterface::LANGCODE_NOT_SPECIFIED]; // See the queries above. Use LIKE for case-insensitive matching. $select = $this->connection->select(static::TABLE) ->fields(static::TABLE, ['alias']) ->condition('source', $source, 'LIKE'); if ($langcode == LanguageInterface::LANGCODE_NOT_SPECIFIED) { array_pop($langcode_list); } elseif ($langcode > LanguageInterface::LANGCODE_NOT_SPECIFIED) { $select->orderBy('langcode', 'DESC'); } else { $select->orderBy('langcode', 'ASC'); } $select->orderBy('pid', 'DESC'); $select->condition('langcode', $langcode_list, 'IN'); try { return $select->execute()->fetchField(); } catch (\Exception $e) { $this->catchException($e); return FALSE; } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Path!AliasStorage.php/function/AliasStorage::lookupPathAlias/8.1.x