Согласно ответу поддержки Аспро, генерация файлов sitemap в настоящее время не работает.
Т.е. при клике на "Пересоздать sitemap.xml" ничего не работает.
Пока нет решения от разработчика, немного дописал "на коленке".
Первый блок - обрабатывает файлы sitemap-files.xml через файл sitemap_files.php
Второй - файл с инфоблоками через sitemap_iblock.php
Третий - основной sitemap через sitemap.php
Файл sitemap.php доступен в решении, поэтому создаем два оставшихся файла и дорабатываем их.
Для sitemap_files.php
Для sitemap_iblock.php
Все это, конечно, можно было сделать через один файл, но так показалось легче для контроля работоспособности.
Сами файлы с картой сайта должны лежать в каталоге /aspro_regions/sitemap/ в формате, к примеру - sitemap-iblock-37_tver.esprimoplus.ru.xml, где sitemap-iblock-37 - инфоблок, tver.esprimoplus.ru - поддомен сайта.
Т.е. при клике на "Пересоздать sitemap.xml" ничего не работает.
Пока нет решения от разработчика, немного дописал "на коленке".
Код |
---|
RewriteCond %{REQUEST_FILENAME} sitemap-files.xml RewriteCond %{DOCUMENT_ROOT}/sitemap_files.php -f RewriteRule ^(.*)$ /sitemap_files.php [L] RewriteCond %{REQUEST_FILENAME} sitemap-iblock-(.*).xml RewriteCond %{DOCUMENT_ROOT}/sitemap_iblock.php -f RewriteRule ^(.*)$ /sitemap_iblock.php [L] RewriteCond %{REQUEST_FILENAME} sitemap.xml RewriteCond %{DOCUMENT_ROOT}/sitemap.php -f RewriteRule ^(.*)$ /sitemap.php [L] |
Первый блок - обрабатывает файлы sitemap-files.xml через файл sitemap_files.php
Второй - файл с инфоблоками через sitemap_iblock.php
Третий - основной sitemap через sitemap.php
Файл sitemap.php доступен в решении, поэтому создаем два оставшихся файла и дорабатываем их.
Для sitemap_files.php
Код |
---|
$sitemapHost = dirname(__FILE__) . "/aspro_regions/sitemap/sitemap-files_{$hostname}.xml"; $sitemapDefault = dirname(__FILE__) . "/sitemap-files.xml"; |
Для sitemap_iblock.php
Код |
---|
$iblock = (int)preg_replace('/[^0-9]+/', '', $_SERVER['REQUEST_URI']); ..... $sitemapHost = dirname(__FILE__) . "/aspro_regions/sitemap/sitemap-iblock-{$iblock}_{$hostname}.xml"; $sitemapDefault = dirname(__FILE__) . "/sitemap-iblock-{$iblock}.xml"; |
Все это, конечно, можно было сделать через один файл, но так показалось легче для контроля работоспособности.
Сами файлы с картой сайта должны лежать в каталоге /aspro_regions/sitemap/ в формате, к примеру - sitemap-iblock-37_tver.esprimoplus.ru.xml, где sitemap-iblock-37 - инфоблок, tver.esprimoplus.ru - поддомен сайта.
Изменено: Валерий Макеев - 08.03.2024 12:33:35