定制 kfoobar/laravel-smart-sitemap 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

kfoobar/laravel-smart-sitemap

Composer 安装命令:

composer require kfoobar/laravel-smart-sitemap

包简介

A Laravel package for generating dynamic sitemaps

README 文档

README

A lightweight Laravel package for generating sitemaps dynamically and on demand.

Designed with simplicity in mind, this package makes it easy to build and serve up-to-date sitemaps directly from your routes or controllers—without relying on caching, scheduled tasks, or pre-generated files.

Ideal for applications with frequently changing content, multi-language setups, or dynamic routing.

Installation

Install the package via Composer:

composer require kfoobar/laravel-smart-sitemap

Usage

This package provides three functions: add(), generate() and view().

  • add(url, modified) – Adds a URL to the sitemap. The second parameter is optional and represents the last modified date.
  • generate() – Returns the sitemap as a string.
  • view() – Returns the sitemap as a proper XML response.

Note: The priority and changefreq fields are intentionally excluded, as Google no longer considers them relevant.

Using the Facade

Add URLs and generate the sitemap using the provided facade:

use KFoobar\SmartSitemap\Facades\Sitemap;

Sitemap::add('https://example.com', now());
Sitemap::generate();

Using the Factory

Alternatively, instantiate the factory directly for more granular control:

use KFoobar\SmartSitemap\SitemapFactory;

(new SitemapFactory)
    ->add('https://example.com')
    ->add('https://example.com/about')
    ->generate();

Example: Serving a Dynamic Sitemap

Here’s a simple way to implement a dynamic sitemap in your Laravel application. Just define a route and return the sitemap directly from a controller—no need for pre-generating files or scheduled jobs.

Define a route in routes/web.php:

Route::get('sitemap.xml', [SitemapController::class, 'index'])->name('sitemap');

Create the controller app/Http/Controllers/SitemapController.php:

namespace App\Http\Controllers;

use App\Models\Content\Post;
use KFoobar\SmartSitemap\Factories\SitemapFactory;

class SitemapController extends Controller
{
    public function index()
    {
        $sitemap = new SitemapFactory;

        foreach (['home', 'about'] as $route) {
            $sitemap->add(route($route));
        }

        foreach (Post::all() as $post) {
            $sitemap->add(
                route('posts.show', $post),
                $post->updated_at->toIso8601String()
            );
        }

        return $sitemap->view();
    }
}

Contributing

Contributions are welcome!

License

The MIT License (MIT). Please see License File for more information.

kfoobar/laravel-smart-sitemap 适用场景与选型建议

kfoobar/laravel-smart-sitemap 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 56 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 06 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 kfoobar/laravel-smart-sitemap 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 kfoobar/laravel-smart-sitemap 我们能提供哪些服务?
定制开发 / 二次开发

基于 kfoobar/laravel-smart-sitemap 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 56
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 9
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-06-25