Описание
Legal Services Management is a powerful, all-in-one WordPress plugin designed specifically for law firms, solo attorneys, and legal service providers. Manage your entire practice workflow without leaving your WordPress dashboard.
Whether you’re a solo practitioner or managing a multi-attorney firm, this plugin gives you everything you need: client records, case tracking, appointment scheduling, document templates, invoicing, and frontend portals for both clients and attorneys.
Core Features
Client Management
* Complete client database with contact details, status tracking, and activity history
* Auto-link WordPress user accounts to client records
* Supports guest and logged-in client bookings
Case Management
* Track cases with case numbers, types (civil, criminal, family, corporate, immigration, real estate), priorities, and statuses
* Assign lawyers and link clients to each case
* Store court info and full case descriptions with the WordPress editor
Appointment Scheduling
* Book in-person, video call, and phone appointments
* Interactive monthly calendar view in the admin dashboard
* Automated email reminders via WP-Cron
* Frontend booking form via shortcode
Invoice & Billing
* Create professional invoices with subtotals, tax rates, and balance tracking
* Track invoice status: Draft, Sent, Paid, Overdue, and Cancelled
* Link invoices to specific cases and clients
* Stripe payment integration (configurable via settings)
Document Templates
* Create reusable document templates with placeholders ({client_name}, {case_number}, {date})
* Manage uploaded files linked to cases and clients
Client Portal (Frontend)
* Logged-in clients can view their cases, appointments, and invoices
* Accessible via [lsm_client_portal] shortcode on any page or post
Attorney/Lawyer Dashboard (Frontend)
* Attorneys can view their assigned cases, appointment calendar, and invoices
* Accessible via [lsm_lawyer_dashboard] shortcode
REST API
* Full RESTful API (/wp-json/lsm/v1/) for integration with external tools
* Permission-controlled endpoints for clients, cases, and appointments
Cron Automation
* Hourly appointment reminder emails
* Daily cleanup of old activity logs and expired sessions
Activity Logging
* Records all create/update operations for audit trail purposes
Available Shortcodes
Shortcode
Description
[lsm_booking_form]
Frontend appointment booking form
[lsm_client_portal]
Client self-service portal
[lsm_lawyer_dashboard]
Lawyer/attorney frontend dashboard
[lsm_lawyer_list]
Display all active lawyers
[lsm_service_list]
Display all available services
[lsm_appointment_calendar]
Client appointment calendar view
Custom Roles & Capabilities
The plugin registers the following custom WordPress roles and capabilities:
- LSM Lawyer – Can manage cases, appointments, and view clients
- LSM Client – Can access the client portal
Custom capabilities: manage_clients, manage_cases, manage_appointments, manage_invoices
Security
- All form submissions protected with nonces (CSRF protection)
- All input sanitized with appropriate WordPress functions (
sanitize_text_field,sanitize_email,wp_kses_post, etc.) - All output escaped before rendering (
esc_html,esc_attr,esc_url) - Database queries use
$wpdb->prepare()with placeholders to prevent SQL injection - Direct file access protection on all PHP files
- Safe redirects via
wp_safe_redirect()
Скриншоты

Admin Dashboard – Overview with stats cards and monthly appointment calendar. 
Client Management – Full client database with add/edit/delete support. 
Case Management – Track cases with types, priorities, and statuses. 
Appointment Scheduling – Schedule appointments with calendar integration. 
Invoice System – Create and manage invoices with tax calculations. 
Frontend Booking Form – Clean booking form rendered via shortcode. 
Client Portal – Self-service portal for logged-in clients. 
Settings Page – Configure company info, Stripe, and Twilio integrations.
Установка
Automatic Installation
- Log in to your WordPress admin panel.
- Go to Plugins Add New.
- Search for Legal Services Management.
- Click Install Now, then Activate.
Manual Installation
- Download the plugin ZIP file.
- Go to Plugins Add New Upload Plugin.
- Upload the ZIP file and click Install Now.
- After installation, click Activate Plugin.
After Activation
- Navigate to LSM Settings to configure your company name, Stripe keys, and Twilio SMS integration.
- Create your first service under LSM Services.
- Add client records under LSM Clients.
- Add the
[lsm_booking_form]shortcode to any page to enable online bookings. - Add the
[lsm_client_portal]shortcode to a members-only page for client self-service.
Часто задаваемые вопросы
-
Does this plugin require WooCommerce?
-
No. Legal Services Management is a standalone plugin and does not depend on WooCommerce or any other plugin.
-
Can clients book appointments without creating a WordPress account?
-
Yes. The
[lsm_booking_form]shortcode supports guest bookings. Guest clients are automatically added to your client database. -
How do I set up the client portal?
-
- Create a new page (e.g., «My Portal»).
- Add the shortcode
[lsm_client_portal]to the page content. - Make the page accessible only to logged-in users (use a membership plugin or WordPress login redirect if needed).
- In the LSM admin, link each client record to their WordPress user account.
-
How do I display my services on the frontend?
-
Add
[lsm_service_list]to any page or post. Services are pulled from LSM Services whereis_active = 1. -
Does the plugin send appointment reminder emails?
-
Yes. The plugin uses WordPress WP-Cron to send automated email reminders for upcoming appointments (within the next 24 hours). This requires your server’s cron to be running.
-
Can I integrate Stripe for payments?
-
Stripe API keys can be configured in LSM Settings Stripe Integration. Full Stripe payment processing requires additional customization using the stored API keys.
-
Is the plugin translation-ready?
-
Yes. All strings are wrapped in WordPress internationalization functions and the plugin includes a
/languagesdirectory for.po/.motranslation files. The text domain islegal-services-management. -
What database tables does the plugin create?
-
The plugin creates the following tables:
—{prefix}lsm_clients
—{prefix}lsm_cases
—{prefix}lsm_services
—{prefix}lsm_appointments
—{prefix}lsm_invoices
—{prefix}lsm_documents
—{prefix}lsm_notifications
—{prefix}lsm_activity_logs
—{prefix}lsm_sessionsAll tables are removed on plugin uninstall.
-
Will it work with my theme?
-
Yes. The plugin renders standard HTML with minimal inline styles and enqueues its own frontend CSS. It is compatible with all standard WordPress themes.
Отзывы
Нет отзывов об этом плагине.
Участники и разработчики
«Legal Services Management» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:
УчастникиПеревести «Legal Services Management» на ваш язык.
Заинтересованы в разработке?
Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.
Журнал изменений
2.0.0
- Major release: Complete rewrite with improved architecture and security hardening
- Added custom capabilities and role management (
manage_clients,manage_cases,manage_appointments,manage_invoices) - Added interactive monthly calendar view in admin dashboard
- Added lawyer frontend dashboard (
[lsm_lawyer_dashboard]shortcode) - Added appointment calendar shortcode (
[lsm_appointment_calendar]) - Added service list shortcode (
[lsm_service_list]) - Added lawyer list shortcode (
[lsm_lawyer_list]) - Added full REST API with permission callbacks
- Added WP-Cron for automated appointment reminders and log cleanup
- Added activity logging for audit trails
- Added Stripe and Twilio settings fields
- Replaced all
wp_redirect()withwp_safe_redirect() - Added nonce verification to all form submissions
- Added
wp_unslash()+ sanitization to all$_POST/$_GETinputs - Added
$wpdb->prepare()for all dynamic database queries - Added
wp_cache_get/setfor all list-view database queries - Replaced
date()withgmdate()throughout for timezone safety - Added ABSPATH direct file access protection to all PHP files
- Added
sanitize_callbacktoregister_setting() - Removed discouraged
load_plugin_textdomain()call (translations auto-load for WP.org plugins)
1.0.0
- Initial release
