Events Addon
The Events Addon is a comprehensive event management system for organizing, scheduling, and displaying events and calendars. It allows you to create detailed event listings with date and time information, locations, recurring schedules, and rich content.
- Introduction
- Getting Started
- Understanding Content Types
- Managing Events
- Managing Related Content
- Recurring Events
- Searching and Filtering
- User-Submitted Content
- Event Fields Reference
- Common Tasks and Workflows
- Tips and Best Practices
Introduction
What is the Events Addon?
The Events Addon is a comprehensive event management system for organizing, scheduling, and displaying events and calendars. It allows you to create detailed event listings with date and time information, locations, recurring schedules, and rich content.
What can you do with it?
- Create and manage events with detailed information including dates, times, locations, and descriptions
- Set up recurring events with daily, weekly, monthly, or yearly recurrence patterns
- Organize events using categories and event types
- Link events to destinations to show where events take place
- Enable user submissions so visitors can submit their own events for review
- Search and filter events by date, category, destination, and other criteria
- Display featured events to highlight special events
- Sync with Google Calendar for external calendar integration
- Provide API access for frontend applications to retrieve and display event data
Key Features
- Event Management: Create comprehensive event profiles with dates, times, locations, and descriptions
- Recurring Events: Support for daily, weekly, monthly, and yearly recurring patterns with flexible scheduling options
- Date and Time Management: Start and end dates/times with timezone support
- Location Integration: Link events to destinations or specify custom locations
- Category Organization: Organize events using categories
- Event Types: Different event types with customizable layouts
- Image Management: Support for main images, header images, and image galleries
- User Submissions: Allow authenticated users to create and manage their own events
- Approval Workflow: Review and approve user-submitted events before they go live
- Search and Filter: Powerful search capabilities with date range filtering
- API Access: RESTful API endpoints for retrieving event data
- Google Calendar Integration: Sync events with Google Calendar
- RRULE Support: Standard recurrence rule format support
Who is this for?
This addon is designed for:
- Content Managers: Who need to create and maintain event information
- Administrators: Who manage the overall system and approve user submissions
- Frontend Developers: Who need to integrate event data into websites or applications
- End Users: Who may submit their own events through the API
Getting Started
Accessing the Events Module
- Log into the admin panel
- Navigate to the Events module in the main navigation menu
- You'll see the main Events dashboard with various sections
Overview of the Admin Interface
The Events module is organized into several sections accessible from the left sidebar:
- Events: Manage all event entries
- Categories: Manage event categories
- Types: Manage event types (different layouts and configurations)
- Fields: Manage custom fields for events
- Calendars: Manage calendar integrations
- Notifications: Manage event notifications
Basic Navigation
- Click on any section name to view a list of all entries in that section
- Use the New button to create a new entry
- Click on an existing entry to edit it
- Use the search and filter options to find specific entries
- For events, you can choose an event type when creating a new event
Understanding Content Types
The Events Addon uses several content types to organize and classify events. Understanding these types will help you effectively manage your event data.
Events
What are events?
Events are the main content type in this addon. An event represents a scheduled occurrence at a specific date and time. Examples include concerts, festivals, workshops, meetings, performances, or any time-based activity.
What information do they contain?
Events can store a wide variety of information including:
- Basic details (title, summary, description)
- Date and time information (start date/time, end date/time, publish date)
- Location information (destination link, custom address, coordinates)
- Images (main image, header image, gallery)
- Contact information (phone, email, website)
- Recurrence patterns (daily, weekly, monthly, yearly)
- Categories and event types
- Rich content blocks for detailed descriptions
- SEO information
When to use it:
Create an event entry for any scheduled activity you want to feature in your system.
Categories
What are categories?
Categories are used to organize events into groups. Examples include "Music", "Sports", "Arts & Culture", "Food & Drink", or "Community Events". Categories help visitors find events by topic or type.
How do they relate to events?
Events can be assigned to one or more categories. When a visitor searches for events in a specific category, they'll see all events assigned to that category.
When to use it:
Create category types that represent the different kinds of events you host. Then assign these categories to relevant events.
Types
What are types?
Event types represent different kinds of events that may have different layouts or configurations. Each type can have its own custom layout template and theme layout, allowing different event types to be displayed differently.
How do they work?
- Event types define how events are displayed
- Each type can have a custom layout
- Types help organize events by their presentation style
- When creating an event, you choose its type
When to use it:
Create event types for different presentation needs. For example, you might have different types for "Concert Events", "Workshop Events", or "Festival Events" that display differently.
Managing Events
This section provides step-by-step guides for managing event entries.
Creating a New Event
Editing Event Information
Setting Date and Time Information
Date and Time Fields:
- Starts At: When the event begins (date and time)
- Ends At: When the event ends (date and time)
- Publish At: When the event should become visible to the public
Tips:
- Use the date/time picker to select dates and times
- Ensure end time is after start time
- Set publish date to control when events appear in listings
- Events can be published in the future for advance scheduling
Adding Location Information
Events can be linked to destinations or have custom location information:
Linking to a Destination:
- Find the Destination field
- Select a destination from the list
- The event will inherit location information from the destination
Custom Location:
- Location Name: Name of the venue or location
- Address: Street address
- City: City name
- State: State or province
- Zip: Zip or postal code
- Country: Country name
- Location: Geographic coordinates (automatically populated when address is geocoded)
Adding Images
Events support three types of images:
Main Image:
- The primary image displayed for the event
- Used in listings and search results
- Recommended size: 1040x585 pixels or similar aspect ratio
Header Image:
- A larger image used at the top of event detail pages
- Recommended size: 1920x600 pixels or similar wide format
Gallery Images:
- Multiple images that can be displayed in a gallery
- Add as many as needed
- Recommended size: 1200x800 pixels or larger
Image Upload:
- An additional image upload field for header images
- Shows as the page header image for the event
To add images:
- Open the event for editing
- Find the image field you want to use (Main Image, Header Image, Image Upload, or Gallery Images)
- Click to upload or select an existing image
- Save your changes
Adding Contact Information
Contact Fields:
- Published Contact: Contact name to display publicly
- Published Phone: Phone number to display publicly
- Published Email: Email address to display publicly
- Contact: Internal contact name (not displayed)
- Phone: Internal phone number
- Email: Internal email address
- Website: Event website URL
- Comments: Internal notes or comments
Adding Categories
To assign an event to categories:
- Open the event for editing
- Find the Categories field
- Select one or more categories from the list
- You can select multiple categories
- Save your changes
Tips:
- Start typing to search for categories
- Select multiple categories to create multiple associations
- These associations help visitors find events through search and filtering
Setting Event Status
Status Fields:
- Enabled: Whether the event is visible to the public
- Approved: Whether the event has been approved by an admin (for user submissions)
- Featured: Whether the event should be featured prominently
Controlling Visibility:
- Uncheck Enabled to hide an event from public listings
- Unapproved events are not visible to the public, even if enabled
- Featured events can be displayed prominently on your frontend
Linking Events to Destinations
Events can be linked to destinations to show where they take place:
- Open the event for editing
- Find the Destination field
- Select a destination from the list
- The event will inherit location information from the destination
- Save your changes
Benefits:
- Automatic location information
- Visitors can see events at specific destinations
- Search for events by destination
Managing Related Content
This section covers how to manage the various content types that support events.
Creating and Managing Categories
Categories help visitors find events by topic or type.
Creating and Managing Event Types
Note: Event types are typically configured by developers or administrators. They control how events are displayed and may have different field configurations.
Managing Fields
Custom fields can be created for events:
Note: Field management is typically done by administrators or developers. Custom fields allow you to add additional information to events beyond the standard fields.
Recurring Events
The Events Addon supports powerful recurring event functionality, allowing you to create events that repeat on a schedule.
Understanding Recurrence Patterns
Events can recur in four ways:
Daily Recurrence:
- Event repeats every X days
- Example: Every 3 days
Weekly Recurrence:
- Event repeats on specific days of the week
- Can repeat every X weeks
- Example: Every Monday and Wednesday, or every 2 weeks on Friday
Monthly Recurrence:
- Event repeats on a specific day of the month
- Or on a specific occurrence of a weekday (e.g., first Monday, last Friday)
- Can repeat every X months
- Example: 15th of every month, or first Monday of every 3 months
Yearly Recurrence:
- Event repeats on a specific date each year
- Or on a specific occurrence of a weekday in a specific month
- Example: December 25th every year, or first Saturday in May every year
Setting Up Recurring Events
Basic Recurrence Setup:
- Open the event for editing
- Find the Recurrence field
- Select the recurrence type: Daily, Weekly, Monthly, or Yearly
- Configure the recurrence options based on the type selected
Recurrence End Date:
- Set an End Date for the recurrence (when recurring events should stop)
- If not set, recurring events will generate up to 180 days in the future
Daily Recurrence:
- Set Daily Days: Number of days between occurrences (e.g., 1 for daily, 3 for every 3 days)
Weekly Recurrence:
- Set Weekly Weeks: Number of weeks between occurrences (e.g., 1 for weekly, 2 for bi-weekly)
- Select Weekly Day(s): Which day(s) of the week (Mon, Tue, Wed, Thu, Fri, Sat, Sun)
- You can select multiple days
Monthly Recurrence:
- Choose one of two options:
- Monthly First: Repeats on a specific day of the month (e.g., 15th of every month)
- Monthly Second: Repeats on a specific occurrence of a weekday (e.g., first Monday, last Friday)
- Set Monthly Months: Number of months between occurrences
- For Monthly First: Set the day of month
- For Monthly Second: Set the weekday and occurrence (first, second, third, fourth, last)
Yearly Recurrence:
- Choose one of two options:
- Yearly First: Repeats on a specific date each year (e.g., December 25th)
- Yearly Second: Repeats on a specific occurrence of a weekday in a specific month
- For Yearly First: Set the month and day
- For Yearly Second: Set the month, weekday, and occurrence
How Recurring Events Work
When you create a recurring event:
- The original event is stored with recurrence settings
- The system generates individual event instances based on the recurrence pattern
- Each instance appears in search results and listings
- Recurring instances are marked with a special ID prefix
- The system generates recurring events up to 180 days in advance (or until the end date)
Important Notes:
- Recurring events are generated dynamically when searched or listed
- The original event remains the "master" event
- Editing the master event affects all future recurring instances
- Past recurring instances are not affected by edits
Searching and Filtering
The Events Addon provides powerful search and filtering capabilities through both the admin interface and the API.
How to Search Events
In the Admin Interface:
- Use the search box at the top of the events list
- Search by title, location, or other text fields
- Results update when you click Filter
Available Search Filters
You can filter events by:
- Title: Search for events by title (partial matches supported)
- Dates: Filter by date range (start date and end date)
- Categories: Filter by one or more categories
- Destinations: Filter by destination
- Featured: Filter to show only featured events
Understanding Search Results
Search results include:
- Event title
- Start and end dates/times
- Main image (if available)
- Brief summary or content preview
- Associated categories
- Location information
Results can be sorted by:
- Upcoming (chronological by start date - default)
- Recent (most recently published first)
Date Filtering:
- Events are filtered to show upcoming events by default
- You can specify a date range to see events within that range
- Recurring events that fall within the date range are included
User-Submitted Content
The Events Addon allows authenticated users to submit their own events through the API.
How Users Can Submit Events
Users with authenticated API access can:
- Create new events using the API
- Update their existing events
- Delete their events
Reviewing and Approving Submissions
Review Process:
What Happens:
- Unapproved events are not visible to the public
- Once approved, events become visible (if also enabled)
- Users receive notifications when their submissions are approved or updated
Managing User-Created Content
Best Practices:
- Review submissions regularly, especially for date-sensitive events
- Provide feedback to users if submissions need changes
- Use the comments field to track review status
- Consider creating guidelines for user event submissions
Common Tasks:
- Edit user-submitted content for accuracy
- Correct date and time information
- Add missing location details
- Improve descriptions
- Add or replace images
- Verify recurrence patterns are set correctly
Event Fields Reference
This section provides a comprehensive reference for all fields available on event entries. Use this as a guide when creating or editing events.
Basic Information
| Field | Type | Required | Description |
|---|---|---|---|
| Title | Text | Yes | The event's title |
| Slug | Text | Yes | URL-friendly version of the title (must be unique) |
| Summary | Text | No | Brief summary or excerpt |
| Content | Rich Text | No | Full detailed description of the event |
| String ID | Text | Yes | Unique string identifier (auto-generated) |
Date and Time
| Field | Type | Required | Description |
|---|---|---|---|
| Starts At | DateTime | Yes | When the event begins |
| Ends At | DateTime | Yes | When the event ends |
| Publish At | DateTime | Yes | When the event should be published |
Location Information
| Field | Type | Required | Description |
|---|---|---|---|
| Destination | Select | No | Link to a destination entry |
| Location Name | Text | No | Name of the venue or location |
| Address | Text | No | Street address |
| City | Text | No | City name |
| State | Text | No | State or province |
| Zip | Text | No | Zip or postal code |
| Country | Text | No | Country name |
| Location | Geolocation | No | Geographic coordinates (auto-populated) |
Contact Information
| Field | Type | Required | Description |
|---|---|---|---|
| Published Contact | Text | No | Contact name to display publicly |
| Published Phone | Text | No | Phone number to display publicly |
| Published Email | Text | No | Email address to display publicly |
| Contact | Text | No | Internal contact name (not displayed) |
| Phone | Text | No | Internal phone number |
| Text | No | Internal email address | |
| Website | URL | No | Event website URL |
| Comments | Text | No | Internal notes or comments |
Event Details
| Field | Type | Required | Description |
|---|---|---|---|
| Producer | Text | No | Event producer or organizer |
| Duration | Text | No | Event duration description |
| Times | Text | No | Additional time information |
| Admission | Text | No | Admission information (price, requirements, etc.) |
Images
| Field | Type | Required | Description |
|---|---|---|---|
| Main Image | Image | No | Primary image (used in listings) |
| Header Image | Image | No | Large header image (used on detail pages) |
| Image Upload | Image | No | Additional header image upload |
| Gallery Images | Multiple Images | No | Image gallery (multiple images) |
| Map Image | Image | No | Static map image |
Recurrence Settings
| Field | Type | Required | Description |
|---|---|---|---|
| Recurrence | Select | No | Recurrence type: daily, weekly, monthly, yearly, or none |
| Range | Select | No | Recurrence range type |
| Range Occurrences | Number | No | Number of occurrences |
| R End Date | Date | No | When recurring events should stop |
Daily Recurrence:
- Daily Days: Number of days between occurrences
Weekly Recurrence:
- Weekly Weeks: Number of weeks between occurrences
- Weekly Day: Array of day abbreviations (Mon, Tue, Wed, Thu, Fri, Sat, Sun)
Monthly Recurrence:
- Monthly First: Checkbox to use day-of-month pattern
- Monthly Second: Checkbox to use weekday occurrence pattern
- Monthly Months: Number of months between occurrences
- Monthly Day: Day of month (for Monthly First)
- Monthly Weekday: Day of week (for Monthly Second)
- Monthly Occurrence: Occurrence (first, second, third, fourth, last)
Yearly Recurrence:
- Yearly First: Checkbox to use date pattern
- Yearly Second: Checkbox to use weekday occurrence pattern
- Yearly Month: Month name (for both patterns)
- Yearly Day: Day of month (for Yearly First)
- Yearly Weekday: Day of week (for Yearly Second)
- Yearly Occurrence: Occurrence (first, second, third, fourth, last)
RRULE Support:
- R RRULE: Raw recurrence rule string (iCal RRULE format)
- R WKST: Week start day for RRULE (MO, TU, WE, TH, FR, SA, SU)
Relationships
| Field | Type | Required | Description |
|---|---|---|---|
| Type | Select | Yes | Event type (controls layout) |
| Categories | Multiple Select | No | Associated categories |
| Author | Select | Yes | Event creator |
| Entry | Select | Yes | Content entry (for rich content) |
Status and Visibility
| Field | Type | Required | Description |
|---|---|---|---|
| Enabled | Checkbox | No | Whether the event is visible to the public |
| Approved | Checkbox | No | Whether the event has been approved by an admin |
| Featured | Checkbox | No | Whether the event is featured |
SEO Fields
| Field | Type | Required | Description |
|---|---|---|---|
| Meta Title | Text | No | SEO meta title |
| Meta Description | Text | No | SEO meta description |
| Meta Keywords | Text | No | SEO meta keywords |
Additional Fields
| Field | Type | Required | Description |
|---|---|---|---|
| Tags | Tags | No | Tags for additional organization |
| Google ID | Text | No | Google Calendar event ID (for sync) |
| Google Link | URL | No | Link to Google Calendar event |
| Yodel ID | Text | No | Yodel integration ID |
| Auto Updates | Checkbox | No | Whether to automatically update from external sources |
Common Tasks and Workflows
This section provides step-by-step guides for common tasks you'll perform when managing events.
Setting Up a New Event from Scratch
What you'll need:
- Event title and basic information
- Start and end dates/times
- Location information (destination or custom address)
- At least one image (recommended)
- Categories (recommended)
Steps:
Tips:
- Start with the essentials, you can always add more details later
- Use a descriptive title that clearly identifies the event
- Choose a slug that's readable and SEO-friendly
- Set publish date appropriately (can be in the future)
Creating a Recurring Event
Setting up weekly recurring events:
- Create a new event with the first occurrence's date and time
- Set Recurrence to "Weekly"
- Set Weekly Weeks (e.g., 1 for weekly, 2 for bi-weekly)
- Select Weekly Day(s) (e.g., Mon, Wed, Fri)
- Set R End Date (when recurring should stop)
- Save
Setting up monthly recurring events:
- Create a new event
- Set Recurrence to "Monthly"
- Choose pattern:
- Monthly First: Specific day of month (e.g., 15th of every month)
- Monthly Second: Specific weekday occurrence (e.g., first Monday)
- Set Monthly Months (e.g., 1 for monthly, 3 for quarterly)
- Configure the specific day/weekday settings
- Set R End Date
- Save
Adding Multiple Events
When adding many events:
-
Prepare your data in a spreadsheet with columns for:
- Title, start date/time, end date/time
- Location, contact information
- Categories, etc.
-
Create events one at a time:
- Start with the first event
- Fill in all information
- Save and move to the next
-
Use consistent naming for easier management later
Time-saving tips:
- Copy similar events and modify rather than starting from scratch
- Use the same categories for similar events
- Batch upload images if possible, then assign them to events
Organizing Events with Categories
Planning your category structure:
- List all the main types of events you have
- Group them into categories
- Create the categories in the admin panel
Example categories:
- Music
- Sports
- Arts & Culture
- Food & Drink
- Community Events
- Workshops
- Festivals
Assigning categories:
- Open an event for editing
- Find the Categories field
- Select one or more appropriate categories
- Save
Best practices:
- Don't create too many categories (aim for 5-10 main categories)
- Assign multiple categories if an event fits in more than one
- Review and refine your category structure periodically
Creating a Featured Events List
To highlight special events:
- Identify events you want to feature
- Open each event for editing
- Check the Featured checkbox
- Save
Featured events will appear when using featured event filters and can be displayed prominently on your frontend.
Tips:
- Feature events that are particularly noteworthy or popular
- Rotate featured events periodically to keep content fresh
- Consider featuring seasonal or special events
- Limit the number of featured events for better impact
Managing User Submissions
Daily workflow:
- Check for new unapproved events
- Review each submission:
- Verify date and time information is accurate
- Check that location information is correct
- Ensure descriptions are complete and well-written
- Verify images are appropriate
- Check recurrence patterns if applicable
- Make any necessary edits
- Approve and enable if ready, or contact the user for more information
Communication:
- Use the comments field to track review status
- Contact users if submissions need changes
- Provide clear guidelines for what makes a good event submission
Quality control:
- Ensure all required information is present
- Verify dates and times are logical (end after start)
- Check for duplicate events
- Verify location information is accurate
Updating Event Information
When to update:
- Date or time changes
- Location changes
- Contact information changes
- New images become available
- Event details change
- Recurrence patterns need adjustment
How to update:
- Find the event (use search if needed)
- Open it for editing
- Make your changes
- Save
For user-submitted events:
- Users can update their own events via the API
- Admins can update any event
- Changes to approved events may trigger notifications
For recurring events:
- Editing the master event affects all future recurring instances
- Past instances are not affected
- You can change recurrence patterns, which will affect future instances
Archiving or Removing Events
Disabling an event:
- Open the event
- Uncheck the Enabled checkbox
- Save
The event will no longer appear in public listings but remains in the system.
Deleting an event:
- Open the event
- Use the delete option (if available)
- Confirm deletion
Note: Deleting a recurring event's master will remove all future recurring instances. Past instances may remain in search results until they expire.
When to archive vs. delete:
- Disable/Archive: Event cancelled but you want to keep the data, or event ended but you want historical records
- Delete: Test entry, duplicate entry, or permanently remove with no need to keep data
Tips and Best Practices
Best Practices for Event Descriptions
Writing effective descriptions:
- Be specific: Include unique details about what makes the event special
- Include practical information: Date, time, location, admission, what to bring
- Use keywords naturally: Include terms people might search for
- Tell a story: Help visitors understand what to expect
- Keep it readable: Use short paragraphs and bullet points for easy scanning
- Update regularly: Keep information current, especially for recurring events
Content structure:
- Opening hook (what makes it special)
- Key details (date, time, location, admission)
- What to expect
- How to participate or attend
- Contact information
Image Recommendations
Main Image:
- Size: At least 1040x585 pixels (or similar 16:9 aspect ratio)
- Content: Best representation of the event
- Quality: High resolution, well-lit, in focus
- Format: JPG or PNG
Header Image:
- Size: 1920x600 pixels or similar wide format
- Content: Scenic view, venue, or representative scene
- Quality: High resolution, professional if possible
- Format: JPG
Gallery Images:
- Size: 1200x800 pixels or larger
- Content: Variety of views, venue, activities, performers
- Quantity: 5-10 images is ideal
- Quality: Consistent quality and style
General tips:
- Use original photos when possible
- Ensure proper lighting
- Include people when appropriate (shows activity and scale)
- Show different angles and perspectives
- Keep file sizes reasonable for web (optimize before uploading)
Category Organization Tips
Creating an effective category structure:
- Keep it simple: Create 5-10 main categories
- Use clear names: Category names should be immediately understandable
- Consider your audience: Organize in a way that makes sense to your visitors
- Review regularly: Refine your structure as you add more events
Common mistakes to avoid:
- Creating too many categories
- Using vague or unclear category names
- Creating categories for only one or two events
- Not reviewing and consolidating similar categories
Recurring Events Best Practices
Setting up recurring events:
- Test the pattern: Create a test event and verify the recurrence generates correctly
- Set end dates: Always set an end date for recurring events to prevent infinite generation
- Use appropriate patterns: Choose the simplest pattern that works (weekly is often better than daily)
- Document exceptions: Note any dates when recurring events won't occur
Managing recurring events:
- Edit the master: Always edit the master event, not individual instances
- Plan ahead: Recurring events generate up to 180 days in advance
- Monitor end dates: Ensure end dates are appropriate for the event type
- Consider one-time changes: For special cases, you may need to create separate one-time events
SEO Tips
Optimizing for search engines:
- Use descriptive titles: Event titles should be clear and include location when relevant
- Write unique descriptions: Avoid duplicate content across events
- Use meta titles and descriptions: Fill these in for better search engine visibility
- Include location keywords: Naturally include city, region, and area names
- Use proper headings: Structure content with headings when using rich text
- Optimize images: Use descriptive alt text for images
- Create quality content: Search engines favor comprehensive, useful content
Meta title best practices:
- Keep under 60 characters
- Include event name, date, and location when possible
- Make it compelling and descriptive
Meta description best practices:
- Keep under 160 characters
- Summarize what makes the event special
- Include key details (date, location) when space allows
Performance Considerations
For content managers:
- Optimize images before uploading: Compress images to reduce file size
- Use appropriate image sizes: Don't upload unnecessarily large images
- Limit gallery images: While you can add many images, 10-15 is usually sufficient
- Keep descriptions concise: While detailed descriptions are good, extremely long content can impact performance
For API consumers:
- Use appropriate limits: Don't request more data than you need
- Use date filters: Filter by date range to reduce result sets
- Cache responses: API responses are cached, but implement client-side caching too
- Use search filters: Filter results on the server rather than loading everything
- Request only needed fields: The API returns comprehensive data, but you may not need everything
For recurring events:
- Set appropriate end dates: Don't create recurring events that extend too far into the future
- Be mindful of generation: Recurring events generate instances dynamically, which can impact performance with very large date ranges
- Use date filters: Always use date filters when searching to limit recurring event generation
General tips:
- Regularly review and update content to keep it fresh
- Remove outdated or irrelevant events
- Archive old events rather than deleting if you might need the data later
- Monitor API usage and optimize queries as needed