numberninecms/cms
NumberNine CMS is a Laravel-based content management system offering a modular admin interface, page and content management, and extensible building blocks for rapidly launching custom websites. It follows Laravel conventions and supports Blade templates for easy integration.
all() instead of get() (#69). Practically, that means query/form payloads with nested or non-scalar values (JSON bodies, array-style form fields, filter sets) now survive into the CMS layer instead of being silently dropped. That unblocks features depending on rich filter/search/settings payloads — a small but real enabler for admin filtering and query-string-driven content views.Consider adoption when:
all() fix specifically improves handling of non-scalar request payloads, which matters if your admin or public views pass arrays (filters, facets, nested query params).Look elsewhere when:
Adoption recommendation for this release: low-risk patch, safe to take. all() vs get() only widens what is read; it does not change signatures or storage. Test any code paths that depend on absent query parameters returning null — all() returns an empty array where get() may have returned a default, so guard your checks. Treat it as a routine bump, not a migration event.
For executives (one paragraph): We can avoid licensing and operating a separate content platform by using a Laravel-native CMS package that lives inside our existing application. That means one deployment, one database, one security model, and no content-sync integration to build or maintain — a meaningful reduction in run-cost and vendor surface for sites whose content needs are straightforward (pages, posts, media, basic structure). The trade-off is maturity: the package is pre-1.0, so we pin versions, and we accept that we may occasionally patch or work around rough edges. The latest release is a small, low-risk bugfix that improves how content queries and filters are read from requests — nothing breaking, no rework required.
For engineering (one paragraph): 0.4.5 changes the request accessor from get() to all() (#69), so array and nested payloads (JSON bodies, bracketed form fields, filter sets) reach the CMS layer intact. No API changes, no schema changes, no deprecations — a patch bump. Action: upgrade, then audit any controller or view that relied on get() defaulting behavior, since all() returns [] rather than a supplied default. Recommend pinning to 0.4.*, adding a smoke test around admin filtering and any query-string-driven content views, and keeping a fork-and-patch option open given the pre-1.0 version line.
For product/design: admin filtering, saved views, and richer query-string-driven content lists become more reliable with this fix — expect fewer "my filter didn't apply" defects. Editorial workflow depth (roles, scheduling, localization) is not delivered by this release and should be scoped and validated separately before we promise it.
How can I help you explore Laravel packages today?