- What SEO features does aerni/advanced-seo cover, and does it include sitemaps or redirects?
- It manages meta tags, Open Graph data, Twitter Card data, canonical URLs and robots directives, all defined in code and rendered consistently across the site. The stated scope is on-page metadata rather than crawling infrastructure, so sitemaps and redirect handling are not part of the documented feature set and should be treated as out of scope unless the repository says otherwise. Verify this before adopting if redirects are a hard requirement, since that is the most common gap in SEO addons.
- Does aerni/advanced-seo work with a plain Laravel app, Laravel 11 or Statamic 5?
- No. It is a Statamic 6 addon rather than a generic Laravel SEO package, and it requires statamic/cms ^6.0 alongside laravel/framework ^12.0 and PHP ^8.4. Teams on Statamic 5, Laravel 11 or PHP 8.3 are blocked outright, and upgrading the platform is a far larger project than adding an SEO addon. For a non-Statamic Laravel application there is no value here.
- How do I install aerni/advanced-seo?
- Install it with Composer using composer require aerni/advanced-seo, then follow the repository's setup instructions for publishing and configuring the addon. Because the version floors are hard constraints, confirm your PHP, Laravel and Statamic versions satisfy ^8.4, ^12.0 and ^6.0 before running the require command. Also check whether the Control Panel assets ship prebuilt or need a Node build step in your deploy pipeline.
- How does the SEO cascade and merge precedence work in aerni/advanced-seo?
- Output is composed through a cascade: site defaults, then collection or taxonomy defaults, then entry-level overrides. This is resolved by a Context value object plus ViewCascade and CascadeComposer, all reached through the Seo facade. The package enforces that SEO output is computed state, so it is never read from or written to entries directly. That keeps the merge precedence centralized and testable instead of smeared across templates.
- Does aerni/advanced-seo support multi-site setups and localizations?
- Yes, it is built around SeoSet, SeoSetConfig and SeoSetLocalization domain objects, so site-level defaults and per-localization values are first-class concepts. That matters for multi-site, multi-collection content organizations where defaults need to differ per site and per collection. Confirm the exact fallback behaviour per localization in the documentation before migrating existing content.
- Is spatie/browsershot required at runtime, and do I need Chromium in production?
- spatie/browsershot ^5.2 is listed as a dependency, which pulls Node and a headless Chromium into your runtime image if it is needed at runtime. Whether it is load-bearing or only used for optional features like OG image generation or rendered previews is the most important thing to confirm before committing. If it is required, plan for a container with browser dependencies and make sure rendering is queued, so a Chrome timeout can never block a content publish.
- Should I use the Eloquent driver or the file/Stache driver with aerni/advanced-seo?
- Both drivers are supported behind identical storage contracts, and the codebase explicitly warns never to assume Eloquent is active. The risk is running Stache locally and Eloquent in production, which invites a class of bugs that only reproduce in prod. Also check whether statamic/eloquent-driver ^5.0 is a dev-only dependency or a runtime requirement when the Eloquent driver is selected.
- How does caching work, and will meta tags go stale after bulk imports?
- Blink cache keys are namespaced as advanced-seo::{type)::{handle}::{suffix} and flushed by prefix through SeoSet::flushBlink(). Prefix flushing on publish is correct in principle, but it is exactly the mechanism that can silently serve stale meta after bulk imports or partial publishes. Map out the invalidation path for imports, saveQuietly() and programmatic publishes, not just the Control Panel publish button.
- How do I test SEO output from aerni/advanced-seo?
- Because SEO output is computed state exposed through the Seo facade and resolved by the cascade, you can assert against it in tests without rendering every template. Typical feature tests hit a page and assert the expected title, description, canonical and robots tags in the response, plus separate tests covering site, collection and entry precedence. Include your multi-site fallbacks and your cache flush path so stale-meta regressions fail in CI.
- Is aerni/advanced-seo actively maintained, and what are the alternatives?
- Adoption is small at around 18 stars with a single maintainer, so bus factor is 1 and there is no implied SLA; ask for a stated support policy and version-support window per Statamic major. Mitigation exists in the Contracts layer, which gives you a clean fork point if the package stalls. If you are not on Statamic 6, the practical alternatives are staying with per-entry SEO fields rendered by your own Blade partial, or another Statamic SEO addon whose version floors match your stack.