WordPress Manager For WHMCS
|WordPress Manager For WHMCS is a module that enables your customers to control and freely alter their WordPress instances right inside your WHMCS. |
Your clients will be able to add WordPress installations using instance images and custom scripts, perform WordPress updates, install themes and plugins, create staging instances and then push them live.
- Admin Area:
|✔ View Active WordPress Installations, Clients And Products Summary|
|✔ View WordPress Installations List|
|✔ Choose Supported Products:|
|✔ Select Available Installation Scripts|
|✔ Select Available Plugin Packages|
|✔ Select Available Instance Images|
|✔ Toggle Blocking Plugins|
|✔ Toggle Automatic Deletion Of Blocked Plugins|
|✔ Add/Remove Selected Plugins From Blacklist:|
|✔ Prevent Blacklisted Plugins From Being Installed By Clients|
|✔ Remove Blacklisted Plugins From Current Installations|
|✔ Set Scan Interval For Blacklist Cleaner|
|✔ Toggle Debug Logs|
|✔ Create Plugin Packages:|
|✔ Enter Package Name And Description|
|✔ Choose Available Plugins|
|✔ Create Instance Images:|
|✔ From Local Or External Installation Source|
|✔ Public Or Private|
|✔ Access Module Tasks List And Logs|
- Client Area:
|✔ View/Create/Edit/Delete WordPress Installations|
|✔ View/Create/Edit/Delete WordPress Installations On Your Resellers Accounts|
|✔ Import WordPress Installation From Remote Server|
|✔ Create WordPress Installation Based On Instance Image|
|✔ View Installation Details:|
|✔ Domain And URL|
|✔ Product On Which Is Installed|
|✔ WordPress Version|
|✔ Site Name|
|✔ Domain And URL|
|✔ Product On Which Is Installed|
|✔ Site Name|
|✔ Creation Date|
|✔ Directory Path|
|✔ Database Access Details|
|✔ Debug Status|
|✔ Instance Status|
|✔ Manage Installation:|
|✔ Create/Restore/Download/Delete WordPress Backups|
|✔ Browse/Install/Manage Themes|
|✔ Search And Install Themes Directly From WordPress.com Base|
|✔ Preview Theme Before Installation|
|✔ Activate/Deactivate Installed Themes|
|✔ Update Installed Themes|
|✔ Browse, Install And Manage Plugins|
|✔ Search And Install Plugins Directly From WordPress.com Base|
|✔ Activate/Deactivate Installed Plugins|
|✔ Update Installed Plugins|
|✔ Browse And Install Plugin Packages|
|✔ Perform Bulk Changes On Themes, Plugins, And Backups|
|✔ View/Create/Edit/Delete WP Config Records|
|✔ Perform Actions:|
|✔ Log In To Control Panel|
|✔ Clear Cache|
|✔ Clone To New Domain|
|✔ Update To Newest Version|
|✔ Change Domain|
|✔ Toggle Auto Upgrade Of:|
|✔ WordPress Installation|
|✔ WordPress Plugins|
|✔ WordPress Themes|
|✔ Create Staging|
|✔ Push Staging To Live Environment|
|✔ Enable/Disable SSL|
|✔ Create Instance Image|
- Supported Modules:
|✔ cPanel Extended - With Complete Integration|
|✔ DirectAdmin Extended|
- General Info:
|✔ Requires Softaculous Auto Installer|
|✔ Automatic Let's Encrypt SSL Installation (DirectAdmin Only)|
|✔ Multi-Language Support|
|✔ Supports PHP 5.6 Up To PHP 7.3|
|✔ Supports WHMCS Template Six|
|✔ Supports WHMCS V7.6 And Later|
|✔ Easy Module Upgrade To Open Source Version|
Installation and Configuration
|In this short tutorial we will show you how to successfully install WordPress Manager For WHMCS.|
We will guide you step by step through the whole installation process.
|1. Log in to our client area and download the module.|
|2. In the downloaded file you might find one or two packages that support different PHP versions.|
In the most recent versions of the module, you will find only one package that supports PHP 7.1 and later.
|Previous updates of the module may contain two packages dedicated to various PHP versions.|
The first one that supports PHP 5.6 up to PHP 7.0, and the second one addressed to PHP 7.1 up to PHP 7.3.
| Important: This situation does not affect the open source version of this module which can be applied to any PHP from version 5.6 and later.|
Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.
|3. Once you have chosen the package with the right PHP version, extract it and upload its content into the main WHMCS directory.|
The content of the chosen PHP version files to upload should look like this.
cPanel (WHM) Installation
|1. Upload and extract the 'UploadToWHM' folder into the /root cPanel directory.|
Files in your cPanel /root/uploadToWHM/ directory should look like these on the following screen.
|2. Once the module is uploaded, enter the /root/uploadToWHM/ catalog and run the following command in the console:|
After a brief moment you should see a confirmation that the plugin has been successfully installed.
|1. In the 'uploadToDirectAdmin' folder find the 'wordpress_cli.tar.gz' package.|
Next, log in to your DirectAdmin panel as an administrator and go to 'Plugin Manager' .
|2. Once in the 'Add Plugin' , select the 'File' option and choose the 'wordpress_cli.tar.gz' package to upload.|
Additionally, mark the 'Install after upload' option and press the 'Add Plugin' button.
|3. Once the plugin is uploaded and successfully installed, you should see it on the plugins list.|
|1. Extract the 'modules' catalog into the main WHMCS directory.|
|2. When you install WordPress Manager For WHMCS for the first time, you have to rename the 'license_RENAME.php' file.|
This file is located in 'modules/addons/wordpress_manager/license_RENAME.php.' Rename it from 'license_RENAME.php' to 'license.php'.
|3. In order to configure your license key, you have to edit the previously renamed 'license.php' file.|
Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → 'My Products'.
|4. In the next step, set up the 'storage' folder as recursively writable.|
This folder is available at 'your_whmcs/modules/addons/WordpressManager/' .
|5. Now you have to activate the module in your WHMCS system.|
Log in to your WHMCS admin area. Click 'Setup' , then choose 'Addon Modules'.
|6. Then, you need to permit access to this module. To do so, click on the 'Configure' button, choose 'Full Administrator' and press 'Save Changes'.|
|7. Now you have to add a cron job as shown below (5 - 10 minutes interval is recommended).|
This cron job is responsible for both: synchronization of WordPress installations and 'Enable SSL' action when installing new WordPress instances.
php -q /your_whmcs/modules/addons/WordpressManager/cron/cron.php Synchronize
Do not forget to replace 'your_whmcs' with your WHMCS root location.
|8. Good job! You have just successfully installed WordPress Manager For WHMCS! Now in your WHMCS press 'Addons' and then 'WordPress Manager'.|
|This section has been divided into two main parts to allow full and, at the same time, easy understanding of the functionality of the whole module.|
In the first part 'Management of Addon' you will see a general outlook of the module's basic configuration, through the product management from the admin area.
The second part describes additional settings and tools concerning WordPress installations that can be used while working in the client area.
|Now that your module is already configured, you may access it at 'Addons' → 'WordPress Manager'.|
| 'Home' section is the first open when entering the addon. |
You will see here a quick summary of the WordPress connected elements and a list of all active WordPress installations with any details on their installation.
|In the 'Product Settings' section you can see the list of compatible products present in your system that WordPress can be configured with.|
Activate the products and press the 'Edit' icon marked on the screen below.
|In 'General' section you set up some specific options concerning the plugins installation. Take a look at the below notes to learn about all the possibilities.|
| Note: By default, installation script names in the client area will be displayed without their IDs. If you want to still change their names to more client-friendly, you can do it in a language file. |
Go to the Tips section and look for more details in the second point.
|This section of the Product Settings includes a list of blocked plugins - those which your clients are not allowed to install.|
|In order to add a plugin to the list simply start typing its name in the search field and press enter to see the results.|
Remember that you must have previously set any "Test Installation" to be allowed to add any plugins to the list.
|Add selected plugin to the blacklist.|
It will no longer be available for clients to install if "Blocked Plugins" option has been enabled in the General section.
|In the 'Plugin Packages' you may prepare ready made packages with selected by you plugins and then offer them to install to your clients. |
In this quick and convenient way, your clients will be given an offer with perfectly adjusted and suitable plugins to shorten the time of searching and verification.
|In 'General' part, enter the package name, select the directory of the test installation, describe the package in short. Save the changes and then move to the 'Plugins' tab.|
In this part you will also need to enable the package once it is prepared.
|Add plugins by searching through the existing ones, start typing the plugin name, press enter and the results will appear.|
Add a single plugin or use mass action button to add plugins in bulk.
|Added plugins will appear on the list of included immediately. You may always delete any unwanted plugins when editing the package by pressing the bin icon.|
|Once you have the packages ready, move again to the General configuration of a product and select which of the packages shall be available for a single product.|
Surely, you may assign a different set of packages to each product.
|This section is dedicated to WordPress images that are used to allow clients to add WordPress installations using this very images of WordPress.|
To create such an image, simply press 'Add New' button and then follow the below described steps.
|In order to properly configure a new instance image you will need to setup the below options. |
Please be aware that to create such instance image you will need to deliver full access data to a server with WordPress installations that will be used to create an image.
|Once you have the images ready, move again to the General configuration of a product and select which of the images shall be available for a single product.|
Surely, you may assign different sets of images to each product.
|The module activities are recorded in the section named 'Logs'. All entries can be deleted at any time, just click the button marked on the screen below.|
Keep in mind that you can remove multiple logs at once.
|This section gives you the view on module tasks to enable SSL in two scenarios:
|Press the 'information' button to get a quick view on the basic information on the task and log details.|
|Logs section will include information on errors only. If a task is completed with success, no information will be included here.|
|All tasks can be deleted separately. To do that, just click the button marked on the screen below.|
Keep in mind that you can remove multiple tasks at once.
|Now that you already have the module configured, you may see the process of adding and managing the WordPress installations by your clients.|
While in the client area, find and choose your product with WordPress management support and then move directly to the relative section.
|WordPress Management page is divided into two parts: 'WordPress Installations' and 'Reseller Accounts'. |
The former one, located at the top of the page, contains a list with basic information regarding every installation, including the domain, related product, URL etc.
|Among additional actions you will find the options to:
|As mentioned above, there are three ways to create a new WordPress Installation. The first basic way is to simply install a completely new and clean instance of WordPress.|
Press the button 'New Installation' marked on the screen below and read the instruction to see how to install a pure new instance.
| A new window split to two tabs will open.|
In the first Details tab, fill in the following fields:
Note that only those fields marked with * (e.g. 'Site Name') are required to complete the creation.
|Complete the configuration by switching to the Other tab and enter the remaining fields (optional):
If you have entered all the data correctly, you can now press the 'Create' button to complete the installation.
Import From Remote Server
|The second way to add a new installation is by importing an existing installation from a remote FTP server. Press the additional actions button to find the redirection.|
|First of all, fill out the data on the source server:
|Then move to the other tab, to provide any data on the destination.
Press 'Import' button to finalize the process.
Use Instance Image
|It is also possible to use an existing instance image.|
|Provide the below enumerated and described details, then press 'Create' to complete:
Note: the process may take from a few up to a dozen or so minutes for the instance to appear on the list, depending on the instance size or complexity.
|Once you have successfully created a new installation, you can edit its advanced options or simply remove it in case you no longer need it.|
Let us view the management options and available actions now.
|At the very first page when you enter the edit section is an exemplary configuration of your installation in 'Management' section. |
You will find there all the basic information, such as domain and database details, available at hand.
|As the name suggests, this section provides you with an ability to create backups.|
You are allowed to download, restore and delete a particular backup.
|Surely you can delete multiple backups at once. See the screenshot below.|
|When creating a backup installation, decide whether to backup directory only, data directory or database. Select location and then confirm the action.|
Note: Keep in mind that creating a backup might take a longer while. Backup will appear on the list when it is ready.
|Here you are enabled to activate, disable, update and delete the existing theme. Add new themes to your WordPress installation in the 'Add New' tab.|
|In order to add a new theme, start typing in the desired theme's name in the search box, press enter to see the actual results.|
You may press the theme thumbnail to preview the on wp-themes.com. Afterwards, press the icon marked on the screenshot below to continue.
|Confirm the installation.|
|Use 'Mass Action' buttons to update or delete numerous themes with a single click.|
|Here you are enabled to activate, deactivate, delete or update the already existing plugins. You can also add new plugins to your WordPress installation in the 'Add New' tab.|
|To add a new plugin, you are required to type in at least the initial letters of the desired plugin's name into the search field to see the actual results.|
Afterwards, press the symbol marked on the screenshot below, and confirm your choice in the window that should be visible on your screen.
|Press the info icon to read its short description.|
|In case the plugin seems interesting, just press the 'Install' button.|
|The 'Mass Action' feature is also present in this section, so you will be able to handle multiple plugins more efficiently and at the same time.|
|Plugin Packages allow to install a bunch of pre-organized plugins at once. Information on how to prepare such packages can be found here.|
Simply press the '+' button to install the package with plugins that seems especially attractive to you.
|In this section you can directly alter the records from the wp-config.php file.|
This file is located in the root of your WordPress file directory and contains your website's configuration details such as database connection information.
You are allowed to edit or delete already existing config records as well as create new ones.
Important: Be particularly careful when editing these config records! You can find more information about edition 'wp-config.php' file here.
|When creating a new config record, enter its proper name, value and chose one of the three available types ( 'Constant', 'Variable' or 'All' ).|
|In the 'Actions' area you can find the following options to:
Underneath you can find detailed description of all the remaining actions. Please take a look.
| This action will result in cloning the installation to another domain. To clone the installation you need to:
The cloned installation will appear on the list of installations after a while.
|If you want to change the domain of your WordPress installation, simply provide here a new one.|
Decide whether to create backup at the same time and enable/disable SSL for the new domain.
Manage Auto Upgrades
|Set up the automatic upgrades rules. Here you may enable or disable automatic upgrades:
|Create staging instances from an application to test the upgrades or changes before using them in the live environment.|
|Please be patient, as the whole process may take a few minutes. The staging instance will appear on the list of your installations after the first cron synchronization.|
Push the staging installation to the live environment once you are sure it works fine and changes suit your needs.
|In case you need to customize the installation before pushig it live simply toggle the 'Customize' option. |
Then define the specification and confirm to finish.
|Turn on or off SSL for the installation. Remember that enabling SSL will result in changes being made in your WordPress database configuration, it is advised to back up your installation. |
Along with enabling SSL, a free Let's Encrypt SSL will be installed on DirectAdmin products (note that this feature is not available for 'cPanel').
|Turn on instance image on the WordPress installation. Simply, toggle 'Mark As Image' option and then fill in the below options.|
Note: The 'FTP Password' input is encoded in the database, which makes is completely safe and secure.
|Existing Reseller's Accounts with the number of WordPress installations. Keep in mind that this section is visible only when such accounts exist in the client's cPanel or DirectAdmin panels.|
In case no such accounts have been detected, this section is hidden.
The table includes the name of the product, reseller's account name on which the instances are installed as well as their number.
|Press the edit icon to view the list of existing installations. Among other allowed actions there are:
|The only difference is the need to select a customer when adding new installation.|
If there is no username available here to choose, the reseller must create an extra account in the cPanel or DirectAdmin panels.
All the remaining options are exactly the same as in case of standard WordPress installations described in the above sections.
|1. In case you wish to remove one of your plugins from WHM, make sure you delete the additional content too:
|2. If you wish to change the names of your WordPress installations scripts to more friendly in the client area, you can do this in language file.|
Simply open your default 'english.php ' file located in '/yourWHMCS/modules/addons/WordpressManager/langs' directory and add a new language record in the following format:
$_LANG['WordPress Script Name']="WordPress Friendly Name";
|3. When using WordPress Manager module with cPanel, you will also need to whitelist 'phar' support in your php.ini on the WHM server.|
You can do this by adding or editing the below record:
suhosin.executor.include.whitelist = phar
|Essential guidance through the process of updating the module is offered here.|
Important: If you are performing an update from a previous version of WordPress Manager with cPanel, you have to also update the files and run again the installation script on your WHM server.
|1. When you have problems with connection, check whether your SELinux or firewall does not block ports.|
|2. If you do not see the config records, make sure that you have also updated the WHM files to the latest version.|
|3. Installation of Let's Encrypt SSL is available only for DirectAdmin products.|
|4. Native integration with cPanel Extended module is supported only up to version 1.2.1 of WordPress Manager. Further versions are currently not compatible.|
Please do not update your WordPress Manager For WHMCS to 1.3.0 or later if you are actively using the integration. This feature will be restored in the future.