private function SitemapWarmer::parseSitemaps in Warmer 8
Same name and namespace in other branches
- 2.x modules/warmer_cdn/src/Plugin/warmer/SitemapWarmer.php \Drupal\warmer_cdn\Plugin\warmer\SitemapWarmer::parseSitemaps()
Parse and cache the configured sitemaps.
Return value
string[] The URLs from parsing the sitemap.
1 call to SitemapWarmer::parseSitemaps()
- SitemapWarmer::buildIdsBatch in modules/
warmer_cdn/ src/ Plugin/ warmer/ SitemapWarmer.php - Builds the next batch of IDs based on a position cursor.
File
- modules/
warmer_cdn/ src/ Plugin/ warmer/ SitemapWarmer.php, line 192
Class
- SitemapWarmer
- The cache warmer for the built-in entity cache.
Namespace
Drupal\warmer_cdn\Plugin\warmerCode
private function parseSitemaps() {
if (isset($this->urlCollection)) {
return $this->urlCollection;
}
$configuration = $this
->getConfiguration();
$sitemaps = empty($configuration['sitemaps']) ? [] : $configuration['sitemaps'];
$sitemap_urls = array_map([
$this,
'resolveUri',
], $sitemaps);
array_map([
$this,
'parseSitemap',
], $sitemap_urls);
$min_priority = empty($configuration['minPriority']) ? 0 : $configuration['minPriority'];
$min_priority = floatval($min_priority);
// Only keep the URLs with enough priority.
$parsed_urls = array_filter($this->sitemapParser
->getURLs(), function (array $tags) use ($min_priority) {
return $tags['priority'] >= $min_priority;
});
$this->urlCollection = array_keys($parsed_urls);
return $this->urlCollection;
}