Architecting Headless Content Delivery with Sulu CMS
Learn how to architect headless content delivery in Sulu CMS, focusing on custom content types, GraphQL boundaries, and preventing schema drift between the admin and frontend.
ReadMeFeed / Community knowledge
Real questions. Useful conversations. Find the people who know your stack.
Learn how to architect headless content delivery in Sulu CMS, focusing on custom content types, GraphQL boundaries, and preventing schema drift between the admin and frontend.
Learn how to diagnose and fix stale content in Sulu CMS by isolating failures between the publication workflow, the content index, and the HTTP cache layer.
Learn how to use Sulu CMS Zones to create flexible, editor-driven layouts that decouple content structure from presentation using Symfony and React.
Sulu CMS uses the sulu_content table to store page translations, linking them to sulu_page via a translations association. URLs use locale prefixes and fallback to a default locale. This guide explains how to add translations, configure routing, and avoid common pitfalls.
Permission Inheritance in Page Tree Reorganization Sulu CMS manages content through a hierarchical page-tree structure, where permissions are often inherited or defined at specific node levels. When moving a page node—along with its entire subtree—to a different parent in the administration interface, the system must reconcile the existing permissions of the
Problem On Sulu 2.5 (Symfony 6.x), a full rebuild of the search index via bin/websiteconsole sulu:search:index (or the admin reindex action) is terminated partway through large content trees. The process appears to be stopped by PHP's max_execution_time rather than by any Sulu-level timeout, and no partial-progress or cancellation message is surfaced in the
Structuring Complex Content Models Sulu CMS utilizes YAML-based configurations to define Content Types, allowing for the creation of structured data through various field types and entity references. When designing complex content models, there is a need to balance data depth with system performance. A specific concern arises when implementing deeply nested