Overview
The Event System allows extensions to hook into core functionality without modifying files. Events are triggered at key points in controller, model, and view execution.Event Class
Fromsystem/engine/event.php:17:
Event Types
Controller Events
Triggered before/after controller execution:system/engine/loader.php:110:
Model Events
Triggered before/after model method calls:system/engine/loader.php:316:
View Events
Triggered before/after view rendering:system/engine/loader.php:183:
Registering Events
In Extension Install Method
admin/controller/extension/myvendor/module/myextension.php
Event Handler Method
catalog/controller/extension/myvendor/module/myextension.php
Common Event Patterns
Modify Controller Output
Intercept Model Data
Add Data to Views
Event Priority
Events with lower priority numbers execute first:Wildcard Events
Use wildcards to match multiple routes:Practical Examples
Add Analytics Tracking
Modify Product Prices
Send Order Notification
Best Practices
Use Specific Triggers
Use Specific Triggers
Be as specific as possible to avoid unnecessary executions:
Check Context
Check Context
Verify you’re in the right context before modifying data:
Preserve Core Functionality
Preserve Core Functionality
Don’t break existing behavior:
Clean Up on Uninstall
Clean Up on Uninstall
Always remove events when uninstalling:
Debugging Events
Enable logging to debug event execution:Next Steps
Creating Modules
Build custom modules with events
Extension Structure
Learn extension file organization
Payment Gateways
Develop payment extensions
Shipping Methods
Create shipping extensions

