Developing Extensions for Plesk
Plesk Extensions in a Nutshell
Create Your First Extension
Plesk Extensions Basics
How to Create and Install Extensions
Choosing the PHP version
Encoding the Source Code
Distributing Extensions
Monetizing Extensions
Available Licensing Models
Issuing Extension Licenses with Key Administrator
Issuing Custom Licenses for Extensions
Obtaining the Online Store URL Correctly
Obtaining License Purchase URL
Obtaining License Upgrade URL
Extension Structure
Class Naming Conventions
Composer Support
Extensions Reference
API Stubs
Adjust Development Environment
Extensions Management Utility
Quick Start
Exercise 1. Tabs, Forms, Lists, Tools
Exercise 2. Task Scheduling and Dashboard Integration
Exercise 3. Plesk Entities and Authentication
Plesk Features Available for Extensions
Implement UI
Create New Page
Implement Form
Implement List
Implement Active List
Implement URL
Implement Localized Message
Add Navigation Elements
Add Tabs
Add Buttons
Add Small Buttons
Integrate to Plesk UI
Integrate to Home Page
Integrate to File Manager
Add Custom Buttons
Admin-only functionality buttons must not appear on other users’ interface pages
Functions available to Customers and Resellers must appear in all appropriate places
Use the
visibility
property to hide functions unavailable for domains without hosting and aliases
Take advantage of the
description
property
Make sure the different UI color schemes are supported
Availability in Power User View
Adjust pages by JavaScript and CSS
Use of global.js and global.css
Avoiding Collisions in Naming
Library Licensing
Include Content into Pages
Integrate with Plesk Service Plans
Permissions
Limits
Embed Custom Data into Plesk Lists
Embed Active List Components
Add Long Tasks
Extend Plesk Forms
Integrate with Plesk Navigation
Localize UI
Localizing Lists and Forms
Localization from any place of your code
Using placeholders in locale keys
Retrieve Data from Plesk
User
Storing and Retrieving User-specific Data
Domain
Retrieving domain information
Storing and Retrieving Domain-specific Data
Examples
Session
Examples
License
Information About Plesk
Custom Settings
Installed Extensions’ Meta Data
Retrieving Extensions Data
Controlling Extensions
Communicate with Plesk API
XML API
Error Handling
Command-Line Interface
Executing Utilities
Executing Privileged Utilities
Store Data of the Extension
The Key-Value Storage
Encrypting Data
Key-value Cleaning
Remarks
Backup and Restore Extension Data
Working with Custom Backup Storages
Authorization
Working with Files
Testing Your Extension with Custom Storage
Manage Files
Domain Files and Directories
Server Files and Directories
Working with Archive Files
Implement Your Own Authorization
Authentication Hook
Confirming Authentication
Subscribe to Plesk Events
handleEvent Method
Object Types and Actions
Old and New Values Combinations
Old and New Values Description
Add Custom Events
Integrate with System services
Manage Services
Web Server
Adding Custom Configuration
Updating Domain Configuration
Mail service
Hooking Points
Handler Calling Conventions
Command Line
Arguments
Processing Messages
Managing Handlers
Registering Mail Handlers
Viewing Mail Handlers
Removing Mail Handlers
Disabling/Enabling Mail Handlers
Implementation Notes
DNS
Third-Party DNS Services
Integration Script Input Parameters
Integrating Plesk with a Third-Party DNS
Verifying Successful DNS Zones’ Synchronization
Verifying Operations with Synchronized DNS Zones
Scheduling Tasks
Send Email Notifications
UI Design Guide
Navigation
Lists
Forms
Status Indicators
Messages
Modal Windows
Groups
Objects
Background Tasks
Testing Extensions
Configuring System for Testing
Installing and Uninstalling System Packages
Testing Interaction with External Services
Extension Examples
Troubleshooting
Developing Extensions for Plesk
Docs
»
Plesk Features Available for Extensions
»
Integrate with System services
»
Mail service
»
Handler Calling Conventions
Handler Calling Conventions
¶