-
Notifications
You must be signed in to change notification settings - Fork 301
Event-based CMS resolver extensibility #2028
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Event-based CMS resolver extensibility #2028
Conversation
a70dfa9 to
bbcb411
Compare
bbcb411 to
9a510b0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds comprehensive documentation about event-based extensibility for CMS resolver customization. It explains how developers can use Shopware's CMS extension point events to modify entity data before it's copied into CMS elements during the slot-resolution process.
- Documents three new CMS extension classes:
CmsSlotsDataCollectExtension,CmsSlotsDataEnrichExtension, andCmsSlotsDataResolveExtension - Provides a workflow and PHP example for intercepting CMS resolution events
- Explains why modifications must happen during CMS resolution rather than after page loading
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
56e0fd8 to
0f69ce9
Compare
0f69ce9 to
35e4dd9
Compare
This pull request adds a detailed explanation to the CMS element extensibility documentation, focusing on how to modify entity data before it is rendered in Shopware's CMS system. The new section clarifies the event-based extension points available for developers and provides a practical example of subscribing to CMS slot resolution events to alter product data before it is displayed.
Event-based extensibility documentation:
CmsSlotsDataCollectExtension,CmsSlotsDataEnrichExtension, andCmsSlotsDataResolveExtension) and their lifecycle event hooks (.preand.post), including typical use cases.Practical guidance and example:
CmsPreResolveSubscriber) that demonstrates how to intercept and modify aProductEntityduring the CMS slot resolution process.