Skip to content

Plugin: dezeen-competitions

Overview

PropertyValue
Plugin NameDezeen Competition Manager
Version1.6
AuthorEDX
Location_project/_web/wp-content/plugins/dezeen-competitions/
PurposeCustom post type for competitions with taxonomy, templates, submission forms, and admin controls

Architecture

dezeen-competitions/
├── dezeen-competitions.php
└── src/
    ├── includes/
    │   ├── class-competition-post-type.php      # CPT registration
    │   ├── class-competition-taxonomy.php       # Taxonomy registration
    │   ├── class-competition-admin.php          # Admin settings
    │   ├── class-competition-shortcode.php      # Shortcode
    │   ├── class-competition-rest-api.php       # REST endpoint
    │   ├── class-competition-query.php          # Query modifications
    │   ├── class-competition-rewrites.php       # URL rewrites
    │   ├── class-competition-templates.php      # Template overrides
    │   ├── class-competition-frontend.php       # Frontend rendering
    │   ├── class-cli-commands.php               # WP-CLI commands
    │   ├── class-competition-widgets.php        # Widget areas
    │   └── class-competition-custom-table.php   # Custom DB table
    └── templates/
        ├── archive-competition.php
        ├── single-competition.php
        ├── taxonomy-competition-category.php
        ├── taxonomy-competition-stage.php
        ├── competition-publishing-options.php
        ├── competition-details.php
        ├── competition-form.php
        └── competition-hero-metabox.php

Custom Post Type

Post TypeSlugREST API
CompetitioncompetitionYes

Custom Taxonomies

TaxonomySlugDescription
Competition Typecompetition-typeType of competition
Competition Stagecompetition-stageCompetition lifecycle stage
Internal Flagsinternal_flagsInternal metadata flags

REST API Endpoints

MethodEndpointPurpose
POSTcompetition/v1/submitCompetition entry submission

Shortcodes

ShortcodePurpose
[competition_form]Competition entry form

WP-CLI Commands

CommandPurpose
wp convert-competition-hero-imageConvert hero images
wp duplicate-hero-imageDuplicate hero images
wp update-competitionsBulk update competitions
wp fix-competition-category-countsFix taxonomy counts

Custom Database Table

Table: {prefix}_competition_visibility

Created on plugin activation. Stores competition visibility/publishing state.

Admin Pages

  • Settings → Competition Settings — Competition configuration

Key Hooks

HookTypePurpose
initActionRegister CPT and taxonomies
rest_api_initActionRegister REST routes
save_postActionMeta updates, visibility sync
pre_get_postsFilterInclude competitions in homepage/feed
rewrite_rules_arrayFilterCustom taxonomy URL rewrites

Theme Integration

  • single-competition.php — Single competition template
  • archive-competition.php — Competition archive
  • taxonomy-competition-stage.php — Stage archive
  • taxonomy-competition-type.php — Type archive
  • page-competitions.php — Competitions landing page
  • competitions-v3.js — Vue 3 competition forms