Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sitemap Laravel Package

thepixeldeveloper/sitemap

Thepixeldeveloper/sitemap is a PHP package for building XML sitemaps and sitemap indexes with a fluent API. It integrates with Laravel to generate, cache, and serve search-engine-friendly sitemaps.

Deep Wiki
Context7

PHP XML Sitemap Generation

Frequently asked questions about Sitemap
Does thepixeldeveloper/sitemap work with Laravel 11 and PHP 8.2+?
Not out of the box on Laravel 10, 11, or 12. The package's last release was 2020-04-03 and its composer.json reflects PHP 7.x-era constraints, so composer require usually fails on platform requirements rather than on incompatible code. The DOM-based generation code is mostly benign under PHP 8, but you will typically need a private fork with a relaxed composer.json to install it on PHP 8.1+.
How do I install thepixeldeveloper/sitemap in a Laravel app?
Run composer require thepixeldeveloper/sitemap, then expect to write all the Laravel glue yourself. There is no service provider, facade, or publishable config in the package, so you add an Artisan command or queued job, an Eloquent query, and a storage or cache write. On PHP 8.1+ capture the Composer failure first and plan for a fork before you commit to the install.
Is thepixeldeveloper/sitemap still maintained in 2026?
No. The repository is archived and the last release was 2020-04-03, so there is no upstream issue triage, no CVE response, and no PHP 8.4 readiness. The sitemap protocol itself is stable, so the XML it produces is still valid, but the dependency reads as unmaintained to auditors and new hires. Treat it as existing technical debt to contain and schedule out, not as a package to adopt for new work.
thepixeldeveloper/sitemap vs spatie/laravel-sitemap — which should I use?
spatie/laravel-sitemap is the maintained, Laravel-native default and covers the same surface with a service provider, config, and generation helpers. thepixeldeveloper/sitemap is framework-agnostic and gives you a small object graph plus DOM serialization, leaving routing, Eloquent, caching, and scheduling entirely to you. For greenfield work in 2026, choose spatie; keep thepixeldeveloper only if it is already in production and the blast radius is low.
How do I generate a sitemap index and split more than 50,000 URLs?
The object graph supports SitemapIndex to UrlSet to Url, so you build multiple UrlSet objects and register them on the index. The package does not enforce the protocol limits for you: you must chunk at 50,000 URLs and keep each file under 50MB, and you own the logic that decides where to split. If your catalog is large, do this in a queued or scheduled job rather than per request.
Does thepixeldeveloper/sitemap support hreflang, image, video, or news sitemaps?
The core API targets standard urlset and sitemap index entries, and the fluent surface is deliberately small. Extended formats such as hreflang alternates, image, video, and news sitemaps are not something the Laravel glue gives you, so verify coverage in the source before you depend on it. If those extensions are required, that is the deciding functional factor and usually pushes you toward a maintained alternative.
Should I generate sitemaps per request or via a scheduled Artisan command?
Generate on a schedule or at deploy, never per request. The package has no knowledge of queues, caching, or storage, and per-request DOM generation on a large catalog is a latency and memory incident waiting to happen. A single Artisan command or queued job that queries models, maps to Url objects, and writes a file is the pattern that fits.
How do I serve and cache the generated sitemap XML in Laravel?
The package only produces the XML string or DOM; serving and caching are your responsibility. Write the output to public/ as a static file, or return it from a route with the correct application/xml content type, and cache it with Laravel's cache or storage layer. Because sitemaps fail silently, add a check that the file is non-empty and well-formed and alert on failures.
How do I handle the archived repository and PHP 8 compatibility — do I need a fork?
Yes, on PHP 8.1+ assume a fork. Relax the php and dependency constraints in composer.json, register the fork as a VCS or path repository, version it, and assign an owner. The code itself is mostly compatible under PHP 8, so the work is packaging and maintenance rather than a rewrite. Set a trigger to revisit, such as the next PHP major.
How should I structure my Laravel code to keep thepixeldeveloper/sitemap swappable?
Wrap it behind an internal SitemapBuilder interface from day one and never call the package directly from controllers or commands. Keep the mapping from Eloquent models to Url objects and the storage write in your own classes, with the package confined to one adapter. That keeps exit cost contained if you later move to spatie/laravel-sitemap or drop the dependency.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect