Как создать sitemap.xml с помощью sonata seobundle (Symfony 4.3)?
С sonata admin bundle столкнулся впервые. Уйму времени потратил, никак не могу реализовать генерацию sitemap.xml.
Для генерации поставил sonata-project/seo-bundle, дошел до раздела sitemap и встрял.
По инструкции создал SitemapIterator
<?php
namespace App\Application\Sonata\SeoBundle;
use Sonata\Exporter\Source\SourceIteratorInterface;
class SitemapIterator implements SourceIteratorInterface
{
protected $key;
protected $stop;
protected $current;
public function __construct($stop = 1000)
{
$this->stop = $stop;
}
public function current()
{
return $this->current;
}
public function next()
{
$this->key++;
$this->current = [
'url' => '/public/',
'lastmod' => '01.01.2020',
'changefreq' => 'weekly',
'priority' => 0.5
];
}
public function key()
{
return $this->key;
}
public function valid()
{
return $this->key < $this->stop;
}
public function rewind()
{
$this->key = 0;
}
}
В services.yaml прописал:
services:
# ...
app.custom_sitemap_service:
class: App\Application\Sonata\SeoBundle\SitemapIterator
В sonata_seo.yaml добавил:
sonata_seo:
#...
sitemap:
services:
- app.custom_sitemap_service
doctrine_orm:
# media
- types: [image]
connections: default
route: sonata_media_view
parameters: {id: null}
query: |
SELECT
id,
updated_at as lastmod,
'weekly' as changefreq,
'0.5' as priority
FROM media__media
WHERE enabled = true
*Запрос отдельно проверил - рабочий.
После чего запускаю php bin/console sonata:seo:sitemap public sonata-project.loc и вижу следующее:

То есть, он создает где-то временный файл, но в /public не перемещает, что бы карта была доступна по адресу sonata-project.loc/sitemap.xml
Подскажите, где накосячил?
P.S. использование конкретно этого бандла - не принципиально. Мытался ещё прикрутить CmfSeoBundle, но там ошибки ещё на этапе установки. А тут вроде бы отрабатывает, но не так как требуется.
Или может посоветуете, как ручками генерить sitemap.xml. К готовым решениям не привязан. Просто по ручной генерации ничего толкового не нашел :(