public function SimpleSitemapCommands::rebuildQueue in Simple XML sitemap 4.x
Same name and namespace in other branches
- 8.3 src/Commands/SimplesitemapCommands.php \Drupal\simple_sitemap\Commands\SimplesitemapCommands::rebuildQueue()
Queue all or specific sitemap variants for regeneration.
@command simple-sitemap:rebuild-queue
@option variants Queue all or specific sitemap variants for regeneration.
@usage drush simple-sitemap:rebuild-queue Rebuild the sitemap queue for all sitemap variants. @usage drush simple-sitemap:rebuild-queue --variants=default,test Rebuild the sitemap queue queuing only variants 'default' and 'test'.
@validate-module-enabled simple_sitemap
@aliases ssr, simple-sitemap-rebuild-queue
Parameters
array $options:
Throws
\Drupal\Component\Plugin\Exception\PluginException
File
- src/
Commands/ SimpleSitemapCommands.php, line 68
Class
- SimpleSitemapCommands
- Class SimpleSitemapCommands
Namespace
Drupal\simple_sitemap\CommandsCode
public function rebuildQueue(array $options = [
'variants' => '',
]) : void {
$variants = array_keys(SimpleSitemap::loadMultiple());
if (strlen($options['variants']) > 0) {
$chosen_variants = array_map('trim', array_filter(explode(',', $options['variants'])));
if (!empty($erroneous_variants = array_diff($chosen_variants, $variants))) {
$message = 'The following variants do not exist: ' . implode(', ', $erroneous_variants) . '. Available variants are: ' . implode(', ', $variants) . '.';
$this
->logger()
->log('error', $message);
return;
}
$variants = $chosen_variants;
}
$this->generator
->setVariants($variants)
->rebuildQueue();
$this
->logger()
->log('notice', 'The following variants have been queued for regeneration: ' . implode(', ', $variants) . '.');
}