Real Estate Client Portal WordPress Plugin

A comprehensive WordPress plugin designed for real estate developers to create private, password-protected client portals with document management capabilities.

Features

  • Client Management: Create and manage individual client accounts
  • Password Protection: Secure client pages with individual login credentials
  • Document Management: Upload and organize documents for each client
  • Admin Interface: Easy-to-use admin panel under Tools menu
  • Security: Built-in WordPress security measures including nonce verification
  • Responsive Design: Works on desktop and mobile devices

Installation

  1. Upload the plugin files to your WordPress /wp-content/plugins/real-estate-client-portal/directory
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. Navigate to Tools → Client Portal to start managing clients

Usage

Setting Up Clients

  1. Go to Tools → Client Portal in your WordPress admin
  2. Click Add New Client
  3. Fill in the client information:
    • Client Name
    • Email Address
    • Password
    • Assign a WordPress page (optional)
  4. Click Add Client

Managing Documents

  1. From the clients list, click Documents next to a client
  2. Use the upload form to add documents (PDF, DOC, DOCX, JPG, PNG)
  3. Maximum file size: 10MB per document
  4. Documents are automatically organized by client

Client Access

Option 1: Using Shortcodes

Add these shortcodes to any page or post:

  • [client_portal_login] – Displays login form
  • [client_portal_content] – Shows client content and documents after login

Option 2: Protected Pages

  1. Create a page in WordPress
  2. Assign the page to a client in the admin panel
  3. The page will automatically be password-protected
  4. Only the assigned client can access it

Client Login Process

  1. Clients visit the page with the [client_portal_login] shortcode
  2. They enter their email and password
  3. After successful login, they can access their documents
  4. Use ?recp_logout=1 parameter to logout

File Structure

real-estate-client-portal/
├── real-estate-client-portal.php (Main plugin file)
├── assets/
│   ├── frontend.css (Client-facing styles)
│   ├── frontend.js (Client-facing JavaScript)
│   └── admin.css (Admin panel styles)
└── README.md (This file)

Database Tables

The plugin creates two custom database tables:

  • wp_recp_clients – Stores client information
  • wp_recp_documents – Stores document metadata and file paths

Security Features

  • Nonce Verification: All forms include WordPress nonce fields
  • Capability Checks: Admin functions require manage_options capability
  • Password Hashing: Client passwords are hashed using WordPress standards
  • File Type Validation: Only allowed file types can be uploaded
  • File Size Limits: Maximum 10MB per document
  • Session Management: Secure client session handling

Customization

Styling

Modify the CSS files in the assets/ directory to customize appearance:

  • frontend.css – Client-facing styles
  • admin.css – Admin panel styles

Hooks and Filters

The plugin follows WordPress coding standards and can be extended using standard WordPress hooks.

Requirements

  • WordPress 5.0 or higher
  • PHP 7.4 or higher
  • MySQL 5.6 or higher

Support

For support and bug reports, please contact the plugin developer.

Changelog

Version 1.0.0

  • Initial release
  • Client management system
  • Document upload functionality
  • Password-protected pages
  • Admin interface
  • Security implementation

License

This plugin is licensed under the GPL v2 or later.


Note: This plugin is designed specifically for real estate developers but can be adapted for other client portal use cases.