function AliasManager::writeCache
Cache an array of the paths available on each page. We assume that aliases will be needed for the majority of these paths during subsequent requests, and load them in a single query during path alias lookup.
File
-
core/
modules/ path_alias/ src/ AliasManager.php, line 91
Class
- AliasManager
- The default alias manager implementation.
Namespace
Drupal\path_aliasCode
public function writeCache() {
// Check if the paths for this page were loaded from cache in this request
// to avoid writing to cache on every request.
if ($this->cacheNeedsWriting && !empty($this->cacheKey)) {
// Start with the preloaded path lookups, so that cached entries for other
// languages will not be lost.
$path_lookups = $this->preloadedPathLookups ?: [];
foreach ($this->lookupMap as $langcode => $lookups) {
$path_lookups[$langcode] = array_keys($lookups);
if (!empty($this->noAlias[$langcode])) {
$path_lookups[$langcode] = array_merge($path_lookups[$langcode], array_keys($this->noAlias[$langcode]));
}
}
$twenty_four_hours = 60 * 60 * 24;
$this->cache
->set($this->cacheKey, $path_lookups, $this->time
->getRequestTime() + $twenty_four_hours);
}
}