WP Manifestindependent plugin directory
manifest / forms / project-request-form

Project Request

A simple WordPress plugin allowing users to submit project requests via a frontend form. Requests are stored in the database, an automatic email confirmation is sent to the user, and site admins can view all requests in the dashboard.

by OSAMA-ALI · github.com/osama-ali-software-engineer/project-request-form

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/osama-ali-software-engineer/project-request-form/archive/refs/heads/main.zip

<<<<<<< HEAD

Project-Request-Form

A simple WordPress plugin allowing users to submit project requests via a frontend form. Requests are stored in the database, an automatic email confirmation is sent to the user, and site admins can view all requests in the dashboard.

Project Request Plugin

A simple WordPress plugin allowing users to submit project requests via a frontend form. Requests are stored in the database, an automatic email confirmation is sent to the user, and site admins can view all requests in the dashboard.

Features

  • Frontend form via [project_request_form] shortcode
  • Stores submissions in custom DB table project_request
  • Handles file uploads
  • Sends confirmation email with custom company content
  • Admin menu for viewing all requests in table view and inspecting details (with file download/view link)
  • Uninstall flow with backup: On deactivation, you’re redirected to a confirmation page. You can choose to delete the plugin and the database table. A backup of all project request data will be saved in your active theme’s upload folder before deletion.

Installation

  1. Place the plugin folder in your wp-content/plugins/ directory.
  2. Activate the plugin from the WordPress admin panel.
  3. Use the shortcode [project_request_form] wherever you want the form to appear.

File Structure

project-request-plugin/
│
├── project-request-plugin.php         # Main plugin bootstrap file
├── project-request-form.css           # (Looks redundant - move into assets/css later, but we keep it)
├── README.md
├── uninstall.php
│
├── assets/                            # All static assets
│   ├── css/
│   │   ├── project-request-form.css   # Main CSS for form
│   │   └── prp-popup.css              # Popup CSS
│   ├── js/
│       ├── project-request-form.js    # Form interactions
│       └── prp-popup.js               # Popup interactions
│
├── includes/                          # All PHP classes
│   ├── class-project-request-db.php
│   ├── class-project-request-form.php # Handles shortcode + enqueues form CSS
│   ├── class-project-request-admin.php
│   ├── class-project-request-cache.php
│   ├── class-project-request-email-templates.php
│   ├── class-project-request-file-handler.php
│   ├── class-project-request-hooks.php
│   └── class-project-request-uninstall.php
│
└── languages/
    └── project-request-plugin.pot     # Translation template

Connection of mail smtp and mailgun mailer

--- define('PRP_SMTP_MAILER','mailgun'); // 'smtp' or 'mailgun' --- define('PRP_SMTP_HOST','smtp-auth.mailprotect.be'); --- define('PRP_SMTP_PORT',587); --- define('PRP_SMTP_ENCRYPTION','tls'); --- define('PRP_SMTP_USER','info@globalinfra.uk'); --- define('PRP_SMTP_PASS','YOUR_SMTP_PASSWORD');

--- define('PRP_MAILGUN_DOMAIN','mg.yourdomain.com'); --- define('PRP_MAILGUN_API','key-xxxxxxxxxxxxxxxx'); --- define('PRP_MAILGUN_REGION',''); // '' or 'eu' --- define('PRP_SMTP_FROM_EMAIL','info@globalinfra.uk'); --- define('PRP_SMTP_FROM_NAME','Global Infra');



## Usage

- Add `[project_request_form]` to any post or page.
- Submitted requests will be shown in the "Project Requests" section in the WordPress dashboard.
- Click "View" in the admin table for full details of each request.

## Uninstall & Backup

When deactivating the plugin, you will be redirected to a confirmation page.  
You can choose to delete the plugin and the database table.  
A backup of all project request data will be saved in your active theme’s upload folder before deletion.

## Customization

You can edit the email content sent to users in `class-project-request-form.php` (see `$company_content`).

## Author

OSAMA-ALI-SOFTWARE-ENGINEER

## License

GPL2 or later

>>>>>>> be8b0b6624206c1903a7bcc56df5ada7562a7ee1