sitemaplib/sitemap-generator

There is no license information available for the latest version (1.0.1) of this package.

PHP sitemap generator

Maintainers

Package info

github.com/GitHub1337User/sitemaplib

pkg:composer/sitemaplib/sitemap-generator

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.1 2025-07-06 10:43 UTC

This package is not auto-updated.

Last update: 2026-04-13 12:39:14 UTC


README

PHP библиотека для генерации sitemap (карты сайта) в различных форматах.

Установка

Установка через Composer:

composer require sitemaplib/sitemap-generator

Использование

require __DIR__ . '/vendor/autoload.php';

use SiteMapLib\SitemapGenerator\SitemapGenerator;
use SiteMapLib\SitemapGenerator\Exceptions\SitemapException;

$validPages = [
    [
        'loc' => 'https://example.com/',
        'lastmod' => '2024-01-01',
        'changefreq' => 'daily',
        'priority' => 1.0
    ],
    [
        'loc' => 'https://example.com/about',
        'lastmod' => '2023-12-15',
        'changefreq' => 'monthly',
        'priority' => 0.8
    ],
    [
        'loc' => 'https://example.com/contact',
        'lastmod' => '2024-01-10',
        'changefreq' => 'yearly',
        'priority' => 0.5
    ],
    [
        'loc' => 'https://example.com/blog/post-1',
        'lastmod' => '2024-02-20',
        'changefreq' => 'weekly',
        'priority' => 0.7
    ],
    [
        'loc' => 'https://example.com/blog/post-1',
        'lastmod' =>  '2024-02-20',
        'changefreq' => 'weekly',
        'priority' => 1
    ]
];

// Генерация CSV
SitemapGenerator::generate(
    urls: $validPages, // Массив данных
    format: 'csv', // Формат (Опционально)
    path: 'csv/test.csv', // Путь сохранения (формат и формат в имени файла должны совпадать) (Опционально)
    useGzip: true // Сжатие (по дефолту отключено) (Опционально)
);

// Генерация JSON
SitemapGenerator::generate(
    urls: $validPages, // Массив данных
    format: 'json', // Формат (Опционально)
    path: 'json/test.json', // Путь сохранения (формат и формат в имени файла должны совпадать) (Опционально)
    useGzip: true // Сжатие (по дефолту отключено) (Опционально)
);

// Генерация XML
SitemapGenerator::generate(
    urls: $validPages, // Массив данных 
    format: 'xml', // Формат (Опционально)
    path: 'xml/test.xml', // Путь сохранения (формат и формат в имени файла должны совпадать) (Опционально)
    useGzip: true // Сжатие (по дефолту отключено) (Опционально)
);

Допустимые значения для changefreq:

always

hourly

daily

weekly

monthly

yearly

never

Для priority:

1.0 - высший приоритет

0.5 - средний

0.1 - низкий

Обработка ошибок

try {
    SitemapGenerator::generate($invalidPages);
} catch (SitemapException $e) {
    echo 'Ошибка генерации sitemap: ' . $e->getMessage();
}

Поддерживаемые форматы

XML

JSON

CSV