linderp/sulu-index-now-bundle
A Sulu CMS bundle that integrates IndexNow, automatically notifying search engines when pages are created, updated, or removed so new and changed content can be discovered and indexed faster. Simple to install and configure in Sulu projects.
pascallinder/sulu-index-now-bundle is a Sulu CMS (Symfony) bundle, not a Laravel package. There is no service provider, no vendor:publish, no facade, no config/index-now.php. If you are on Laravel you cannot install this as-is — see the equivalent pattern in Implementation Patterns below.composer require pascallinder/sulu-index-now-bundleconfig/bundles.php (or your kernel, depending on Sulu version).config/packages/ — the bundle key is sulu_index_now; verify exact option names in vendor/pascallinder/sulu-index-now-bundle/DependencyInjection/Configuration.php before trusting any blog post.https://your-host/{key}.txt (or set a custom keyLocation).bin/console cache:clear and, if the bundle ships Doctrine entities, bin/console doctrine:migrations:migrate.var/log/dev.log, and check the IndexNow report in Bing Webmaster Tools. That end-to-end loop is the whole value proposition — verify it before wiring anything else.bin/console debug:container | grep -i indexnow) into your own listeners or commands when you have content types the bundle doesn't hook, or when you want to submit from an import job.ContentMapper results and submits in batches of up to 10,000 URLs per request. Run it once after go-live, then never again from a request cycle.urlList.staging.example.com URLs is harmless but pollutes reports; submitting production URLs from staging is not.Http::post('https://api.indexnow.org/indexnow', ['host' => ..., 'key' => ..., 'keyLocation' => ..., 'urlList' => [...]]). Put it in a queued job fired from a model observer on save/publish, with ShouldBeUnique to dedupe. That is roughly what this bundle does for Sulu — worth knowing before you adopt a CMS-specific dependency..txt) must exactly equal the key value. A trailing slash or a CDN cache miss will yield a silent rejection.200/202 on success and 4xx on key/format problems, but the bundle may swallow transport exceptions during the publish request. Enable logging on the bundle's namespace and watch for it after every deploy that touches content.0.2.x the config schema and service IDs can change in a patch. Pin the version in composer.json and read Configuration.php after every upgrade instead of relying on the changelog — the 0.2.5 → 0.2.5.1 notes are an empty changelog link, i.e. no documented changes at all.services: ... decorates:) rather than forking. Clear the Symfony cache after any config or service override; stale container definitions are the #1 cause of "my config change did nothing."How can I help you explore Laravel packages today?