The process_site_templates Script
Valid for versions 82 through the latest version
Last modified: August 5, 2021
/scripts/process_site_templates script processes template files and user-provided data to create a Site Publisher website.
When users publish a Site Publisher website, the script performs the following actions:
- The script logs template information and the target directory to the
- The script saves a copy of the target directory’s current contents as a tarball in the
userrepresents the account’s username.Note:If the system encounters a file system or file quota error during this step, it will not save the tarball and will not publish the new Site Publisher website.
- The script deletes any Site Publisher backup tarballs that are more than 30 days old.
- The script generates and saves the new Site Publisher website’s files.
- If one of the new website’s files conflicts with an existing file, the system overwrites the existing file with the new file.
- If the system encounters an error during this step, it restores the target directory’s original contents from the backup tarball and does not publish the new Site Publisher website.
- The system saves configuration information for the new website in the
userrepresents the account’s username. It saves this files as the
home-user-public_html-example.comrepresents the Site Publisher website’s target directory, with hyphens ( - ) instead of slashes ( / ).
To run the
/scripts/process_site_templates script on the command line, use the following format:
You can use the following options with the
--define— Define a template variable and its desired value. Each template variable requires a separate
The template that you specify determines the values to define.
- If you use a cPanel-provided template, read our Guide to Site Publisher Templates documentation for a list of template variables.
- If you use a third-party template, consult that template’s documentation or its
--help— Display a help message.
--source— Define the absolute path to the template’s source location.
/home/username/var/cpanel/reseller/site_templates/— A reseller’s templates, where
usernamerepresents the reseller’s username.
/usr/local/cpanel/etc/site_templates/— cPanel-provided templates in cPanel & WHM version 56 through 68.
/usr/local/cpanel/3rdparty/share/site_templates/— cPanel-provided templates in cPanel & WHM version 70 and later.
--target— Define the absolute path to the directory to which you wish to publish the Site Publisher website. Generally, you should specify the target domain’s home directory path.
For example, to use the
/scripts/process_site_templates script, you could run the following command:
/scripts/process_site_templates --source=/var/cpanel/customizations/site_templates/my_template --target=/home/username/public_html/example.com --define business_name="National Emotion, Inc." --define phone="867-5309" --define contact="firstname.lastname@example.org"
This example uses the
my_template template to publish a website for the
username cPanel user’s
example.com domain, and defines values for three parameters that the
my_template template uses.