1 Отредактировано Дмитрий (18.10.2022 09:56:33)

Тема: Кастомная карта сайта

Здравствуйте. Подскажите, можно мне как-то подпилить модуль sitemap, чтобы убрать автоматическое добавление категорий и товаров в него? Или в orm editore галочку сделать товарам и категориям (добавлять или нет)

Повысить оценку Понизить оценку

2 Отредактировано Закусило Александр (23.10.2022 19:22:12)

Re: Кастомная карта сайта

Дмитрий пишет:

Здравствуйте. Подскажите, можно мне как-то подпилить модуль sitemap, чтобы убрать автоматическое добавление категорий и товаров в него? Или в orm editore галочку сделать товарам и категориям (добавлять или нет)

Покажите код front контроллера

Re: Кастомная карта сайта

namespace Sitemap\Controller\Front;

class Sitemap extends \RS\Controller\Front
{
    public
        $site_id,
        $map_type,
        $gzip,
        $chunk;

    function init()
    {
        $this->site_id = $this->url->request('site_id', TYPE_INTEGER);
        $this->map_type = $this->url->request('type', TYPE_STRING);
        $this->gzip = $this->url->request('pack', TYPE_STRING) == 'gz';
        $this->chunk = $this->url->request('chunk', TYPE_STRING);

        $this->wrapOutput(false);
    }

    /**
     * Генерирует и возвращает главный файл sitemap.xml
     */
    function actionIndex()
    {
        $api = new \Sitemap\Model\Api($this->site_id, $this->map_type, $this->gzip);
        if ($this->chunk != '') {
            $api->sitemapChunkToOutput((int)$this->chunk);
        } else {
            $api->sitemapToOutput();
        }
        return;
    }
}

Повысить оценку Понизить оценку

Re: Кастомная карта сайта

Так, а в Апи, что там в методе sitemapChunkToOutput?

Re: Кастомная карта сайта

Закусило Александр пишет:

Так, а в Апи, что там в методе sitemapChunkToOutput?

К сожалению мозгов не хватает понять, что нужно?)))

Повысить оценку Понизить оценку

Re: Кастомная карта сайта

/**
     * Отдает составные части sitemap
     *
     * @return void
     */
    function sitemapChunkToOutput($chunk)
    {
        $app = \RS\Application\Application::getInstance();
        $chunk_file = $this->getChunkFilepath($chunk);

        if (file_exists($chunk_file)) {

            $content_type = $this->gzip ? 'application/x-gzip' : 'text/xml';

            $app->headers
                ->addHeader('Content-Type', $content_type)
                ->sendHeaders();
            readfile($chunk_file);
        } else {
            $app->showException(404, t('Файл не найден'));
        }
    }

Повысить оценку Понизить оценку

Re: Кастомная карта сайта

Вам нужен вот этот хук https://readyscript.ru/dev-manual/dev_h … s_getpages там можно отфитровать список из входящиго параметра getpages