WP Manifestindependent plugin directory
manifest / events / event-manager-plugin

Event Plugin

Custom Plugin for managing events.

by Mohammad Taghipoor · github.com/logicworks-stack/event-manager-plugin

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/logicworks-stack/event-manager-plugin/archive/refs/heads/main.zip

Custom Event Manager Plugin

Task Overview

This plugin adds a custom post type, Event, to your WordPress site, along with related taxonomies and enhanced features for managing events. The plugin includes functionalities such as custom meta boxes, front-end display options, search and filtering capabilities, user notifications, and REST API integration.

Features

  • Custom Post Type and Taxonomies

    • Registers a custom post type, Event, with necessary capabilities.
    • Creates a custom taxonomy, Event Type, related to the post type.
  • Admin Interface Enhancements

    • Adds custom meta boxes for fields like event date and location.
    • Customizes the admin list view to display relevant information about each event.
  • Front-End Display

    • Develops templates for single event entries and archive views with proper styling.
    • Implements shortcodes or blocks for embedding event listings in posts or pages.
  • Search and Filtering Functionality

    • Creates a filtering system for users to search events by taxonomy or criteria (e.g., date range).
    • Implements a search feature for finding specific events.
  • User Notifications

    • Integrates email notifications for users when events are published or updated.
    • Includes RSVP functionality for confirming attendance at events.
  • REST API Integration

    • Exposes the custom post type via the WordPress REST API for external applications to interact with event data.
  • Localization and Internationalization

    • Prepares the plugin for translation using internationalization functions and includes sample translation files.
  • Security Best Practices

    • Implements input validation and sanitization for all user inputs.
    • Uses nonce verification for data-modifying actions to prevent CSRF.
  • Performance Optimization

    • Optimizes database queries and ensures efficient front-end rendering.
    • Utilizes caching strategies where appropriate.
  • Documentation and Code Quality

    • Maintains clean, well-organized code with proper documentation.
  • Unit Testing

    • Includes unit tests for the plugin's core functionalities covering various scenarios, including edge cases.

Installation Instructions

  1. Clone the repository to your local machine:

    git clone https://github.com/yourusername/custom-event-manager.git
  2. Navigate to the plugin directory:

    cd custom-event-manager
  3. Upload the plugin folder to the wp-content/plugins/ directory of your WordPress installation.

  4. Activate the plugin through the WordPress admin interface or using WP-CLI:

    wp plugin activate custom-event-manager
  5. Follow the setup instructions in the WordPress admin panel to configure the plugin.

Usage Guidelines

  • Creating Events

    • Go to the Events section in the WordPress admin panel.
    • Click on Add New to create a new event and fill in the necessary details.
  • Displaying Events

    • Use the shortcode [event_listing] or the designated block to embed event listings in posts or pages.
  • Searching and Filtering Events

    • Use the search bar or filtering options provided in the events archive page to find specific events.

Sample Data

You can use the following sample data to test the plugin:

  • Event Title: "Sample Event"
  • Event Date: "2024-10-10"
  • Location: "Sample Venue"
  • Event Type: "Workshop"

Evaluation Criteria

  • Functionality: Does the plugin meet the specified requirements?
  • Code Quality: Is the code organized, clean, and well-documented?
  • Security: Are best practices for security implemented effectively?
  • Performance: Is the plugin optimized for speed and efficiency?
  • Testing: Are there adequate unit tests, and do they cover a range of scenarios?

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contributing

Contributions are welcome! Please submit a pull request or open an issue for any enhancements or bug reports.

Author

Mohammad Taghipoor - Mohammad's GitHub Profile