scarlet/sitemap-generator
最新稳定版本:2.0.0
Composer 安装命令:
composer require scarlet/sitemap-generator
包简介
A library for generating sitemaps in XML, CSV, and JSON formats.
README 文档
README
Описание
Sitemap Generator - это PHP-библиотека для генерации карты сайта в форматах XML, CSV и JSON. Поддерживает валидацию входных данных и обработку ошибок.
Возможности
- Генерация карты сайта в XML, CSV, JSON
- Создание директорий при отсутствии
- Исключения при ошибках (невалидные данные, ошибки записи в файл, неподдерживаемый формат)
Установка
Библиотека доступна через Composer:
composer require scarlet/sitemap-generator
Использование
Пример кода
require_once __DIR__ . '/vendor/autoload.php'; use Vendor\SitemapGenerator\SitemapGenerator; use Vendor\SitemapGenerator\Exceptions\InvalidDataException; use Vendor\SitemapGenerator\Exceptions\FileWriteException; use Vendor\SitemapGenerator\Exceptions\UnsupportedFormatException; use Vendor\SitemapGenerator\Exceptions\DuplicateUrlException; $urls = [ [ 'loc' => 'https://site.ru/', 'lastmod' => '2020-12-14', 'priority' => 1.0, 'changefreq' => 'hourly' ] ]; try { $generator = new SitemapGenerator('xml', __DIR__ . '/sitemaps/sitemap.xml'); $generator->generate($urls); echo "Карта сайта успешно создана!"; } catch (InvalidDataException | FileWriteException | UnsupportedFormatException | DuplicateUrlException $e) { echo "Ошибка: " . $e->getMessage(); }
Тестирование
Для запуска тестов используйте PHPUnit:
vendor/bin/phpunit tests
Структура проекта
sitemap-generator/
├── src/
│ ├── SitemapGenerator.php
│ ├── Interface/
│ │ ├── SitemapFormatterInterface.php
│ ├── Formatters/
│ │ ├── XmlSitemapFormatter.php
│ │ ├── CsvSitemapFormatter.php
│ │ ├── JsonSitemapFormatter.php
│ ├── Exceptions/
│ │ ├── DuplicateUrlException.php
│ │ ├── InvalidDataException.php
│ │ ├── FileWriteException.php
│ │ ├── UnsupportedFormatException.php
├── tests/
│ ├── SitemapGeneratorTest.php
│ ├── XmlSitemapFormatterTest.php
│ ├── CsvSitemapFormatterTest.php
│ ├── JsonSitemapFormatterTest.php
├── composer.json
├── README.md
├── .gitignore
├── LICENSE
Лицензия
MIT License
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-03-05