Product Decisions This Supports
- Build vs. buy for the content layer. Sylius ships commerce, not content. This plugin answers the recurring "do we build our own Page/Block entities and admin CRUD, or adopt a bundle?" question — typically 4–8 engineer-weeks of custom entity, grid, form, fixture, and Twig work it replaces.
- Marketing self-serve vs. engineering tickets. Pages, Blocks (grouped into Sections), FAQ entries, and Media are editable in the Sylius admin. This is the lever for reducing "change the banner copy" tickets in the backlog.
- Campaign and landing-page velocity. Slug-routed pages with selectable templates make seasonal campaigns, SEO landing pages, and category-adjacent editorial content a content-ops task rather than a release.
- Merchandising placement strategy. Block/Section rendering via Twig helpers lets product decide where curated content appears (homepage hero, promo strips, PDP cross-sell slots) without touching product data or the PIM.
- Channel and locale strategy. Content is translatable and channel-aware, so multi-storefront and multi-language rollout decisions can be scoped against a real content model instead of a spreadsheet.
- Support deflection as a product surface. The FAQ module is a cheap test of whether self-serve answers reduce contact volume before investing in a helpdesk or knowledge base.
- Roadmap scoping for experimentation. Template variants exist, but there is no built-in A/B testing, scheduling, or editorial workflow — those remain roadmap items, not assumed capabilities.
When to Consider This Package
Adopt when:
- You are on Sylius 1.x / Symfony — the framing of this as a "Laravel/PHP package" is a mismatch worth correcting early; it is a Sylius bundle, not a Laravel package.
- You need editorial pages, reusable content blocks, FAQ, and a media library and nothing more elaborate.
- Your team is fluent in Twig and Sylius resource/grid conventions; custom block types are a template-plus-entity exercise, not a framework fight.
- You run one to a few channels/locales with a manageable content volume and no formal editorial approval chain.
- You want MIT-licensed, no-vendor-lock-in content tooling that you can fork if needed.
Look elsewhere when:
- You need a visual/drag-and-drop page builder, content scheduling, versioning, or multi-step editorial approval — this is a structured content model, not a page builder.
- You need enterprise content operations (localization workflows, content APIs for multiple frontends, previews). A headless CMS (Contentful, Storyblok, Strapi) or a custom integration is the honest comparison.
- You are not on Sylius, or you are locked to a Sylius version outside the plugin's supported matrix.
- Ecosystem depth matters to you. 244 stars and zero dependents on record is a thin signal: expect to read the source rather than find answers, and treat the maintainer as a single point of failure despite the March 2025 release cadence.
- You cannot absorb upgrade churn on major Sylius releases — plugin and platform upgrades are coupled, and that cost recurs.
How to Pitch It (Stakeholders)
For executives: This is a free, MIT-licensed content layer for our storefront. It lets marketing publish campaign pages, promo blocks, and FAQs without engineering involvement, and it replaces roughly one to two months of custom build with a maintained bundle. No license cost, no new infrastructure, no vendor contract. The trade-off is maintenance: we inherit an upgrade dependency tied to Sylius releases, and the plugin's community is small, so we should budget for periodic upgrade work and keep the option to fork.
For engineering: Standard Sylius bundle — resource-based CRUD, Doctrine migrations, fixtures, and Twig render helpers for blocks and sections. It slots into our existing admin and templating conventions rather than introducing a new stack or service. Custom content types are additive. Key diligence items: pin and verify the Sylius version compatibility matrix, review the HTML/WYSIWYG sanitization path before exposing it to non-technical editors, and confirm the routing/slug behavior against our SEO requirements and existing URL structure.
The ask: Approve a bounded pilot — one campaign landing page, one promo block section, and a small FAQ — to measure marketing self-serve rate and ticket reduction against the upgrade cost. Success criteria are content shipped without a release and a documented upgrade path to the next Sylius minor. If the pilot shows heavy demand for scheduling, approvals, or visual editing, we escalate to a headless CMS evaluation rather than extending this plugin.