Skip to content

Plugin: dezeen-events-guide

Overview

PropertyValue
Plugin NameDezeen Events Guide
Version1.1.0
AuthorDenCreative
Location_project/_web/wp-content/plugins/dezeen-events-guide/
PurposeEvents guide customisation, REST API, filtering, and ICS calendar downloads

Architecture

dezeen-events-guide/
├── dezeen-events-guide.php
└── classes/
    ├── core.php                # Main loader
    ├── admin.php               # Admin settings, ACF fields
    ├── frontend.php            # Shortcodes, frontend
    ├── install.php             # DB table creation
    ├── uninstall.php           # Cleanup
    ├── rest-api.php            # REST endpoints
    ├── actions-and-filters.php # Hooks
    ├── filter-object.php       # Filter data structure
    └── rewrites.php            # URL rewrite rules

REST API Endpoints

MethodEndpointPurpose
GETdezeen-event-guide/v1/parent/{id}Get parent post
GETdezeen-event-guide/v1/children/{id}Get children posts
GETevents-guide/v1/eventsGet filtered events
GETevents-guide/v1/filtersGet filter options

All events-guide REST endpoints are whitelisted for JWT auth.

Shortcodes

ShortcodePurpose
[event-calendar-download]ICS calendar download link

Custom Database Tables

Created on install:

TablePurpose
{prefix}_events_guideEvents data
{prefix}_events_guide_typesEvent types
{prefix}_events_guide_city_guidesCity guide associations

ACF Field Groups

  • Local field group registered in classes/admin.php for event metadata

Admin Pages

  • Submenu page under Events for events guide configuration

Key Hooks

HookPurpose
rest_api_initRegister REST routes
widgets_initRegister widget areas
initRegister rewrite rules
query_varsAdd custom query variables
jwt_auth_whitelistWhitelist event endpoints for JWT
  • mu-plugins/dezeen/src/dezeen-events.php — Events business logic
  • mu-plugins/dezeen/src/dezeen-events-create-taxonomies-and-cpts.phpdezeen_event CPT and taxonomies (event_type, event_city_guide, location)
  • Theme templates: single-dezeen_event.php, archive-dezeen_event.php, taxonomy-event_city_guide.php, taxonomy-event_type.php, taxonomy-location.php, page-events.php, template-events.php
  • Theme JS: eventsguide-min.js, events-sticky-column-min.js