This update guide only applies to our WHMCS Templates that are using the WHMCS Six client area template as a base. If you're using v2+ then this update does not apply to your template, please refer to the update announcement for more information. Find Template Version

Video

A video does not yet exist for this guide.

Request Video

Contents

Update Service

Save yourself time by using our professional update service. Your update to WHMCS v8.2 will be completed in-house by our team who will ensure everything goes smoothly with no loss of customizations.

In this tutorial you will learn how to update your WHMCS Template to support WHMCS v8.2.

Is This Update Required?

This update needs to be applied to your template to add support for WHMCS v8.2. If you purchased your template after the launch of WHMCS v8.2 (23rd June 2021) you do not need to follow this update as it will already be applied to your version.

How To Update

Active Updates Required

This update is available to download right away for those who have subscribed to updates ($30/year). If you purchase your theme without updates or your updates have expired you will need to renew using the button below.

You will need to follow every step below to update to WHMCS v8.2.

1. Update WHMCS

To begin you will need to update WHMCS to v8.2 following WHMCS's documentation or you can hire us to update your WHMCS.

2. Complete Earlier Template Updates

If you updated from WHMCS v8.1.2 to v8.2 you can skip this section and move onto step 3.

If you updated from an earlier version of WHMCS you will need to apply the missing template updates before completing this one:

View All Template Updates

3. Upload The Files

Want to save time? You can hire us to update your template.

The next step is to upload the files from the update ZIP we have carefully prepared. The files contained within this update are unlikely to have been modified by most users as they are core client area files. If there are changes required to files that are more likely to have been edited (such as header.tpl, template.css, english.php) they will be listed as manual edits in step 4 to ensure that any edits made to these files will not be lost.

Steps To Upload

1. Make a full backup of your WHMCS files & database for safety

2. Download the update files >> Download WHMCS v8.2 Update (.zip)

3. Extract the ZIP file to your desktop

4. Rename the /upload/templates/your_active_template/ to the name of your active Zomex template you'd updating (e.g stellar, universe, eco-net etc)

5. Upload the contents of the upload directory using an FTP client to:

/whmcs_path/

Ensure that your FTP client does not replace directories and instead adds/overrides the new files within the existing directory. We recommend FileZilla which is free and will work correctly out of the box.

If you have made customisations to any files contained in the ZIP we recommend comparing your version and the updated version so you can re-apply your customisations manually.

You can also refer to the WHMCS v8.2 template guide on GitHub to see all of the updates to each file. However, the guide we have created is a much simpler update process.

4. Apply Manual File Edits

The final step is to make manual edits to some files. These edits are made manually as there is a higher chance that the files may have been customized. Manually applying the WHMCS v8.2 edits ensures that any prior customisations are safe.

Open: /whmcs_path/templates/your_active_template/header.tpl

Find the following code:

{include file="$template/includes/verifyemail.tpl"}

And replace with the following:

{include file="$template/includes/validateuser.tpl"}
{include file="$template/includes/verifyemail.tpl"}

Open: /whmcs_path/templates/your_active_template/includes/hook-head.tpl (or functions.tpl for certain templates)

Find the following code:

<script>
var csrfToken = '{$token}',
markdownGuide = '{lang key="markdown.title"}',
locale = '{if !empty($mdeLocale)}{$mdeLocale}{else}en{/if}',
saved = '{lang key="markdown.saved"}',
saving = '{lang key="markdown.saving"}',
whmcsBaseUrl = "{\WHMCS\Utility\Environment\WebHelper::getBaseUrl()}",
requiredText = '{lang key="orderForm.required"}',
recaptchaSiteKey = "{if $captcha}{$captcha->recaptcha->getSiteKey()}{/if}";
</script>

And replace with the following:

<script type="text/javascript">
var csrfToken = '{$token}',
markdownGuide = '{lang|addslashes key="markdown.title"}',
locale = '{if !empty($mdeLocale)}{$mdeLocale}{else}en{/if}',
saved = '{lang|addslashes key="markdown.saved"}',
saving = '{lang|addslashes key="markdown.saving"}',
whmcsBaseUrl = "{\WHMCS\Utility\Environment\WebHelper::getBaseUrl()}",
requiredText = '{lang|addslashes key="orderForm.required"}',
recaptchaSiteKey = "{if $captcha}{$captcha->recaptcha->getSiteKey()}{/if}";
</script>

Open: /whmcs_path/templates/your_active_template/includes/menu.tpl

Find the following code (it may look slightly different but that is fine as we are replacing the whole section):

{* Marketplaceconnect links *}
	{if $symantec}<li class="navicon navicon-ssl"><a href="{$WEB_ROOT}/{$symantec}">{$LANG.navMarketConnectService.symantec}<em><br />{$LANG.store.ssl.dv.tagline}</em></a></li>{/if}
	{if $spamexperts}<li class="navicon navicon-email"><a href="{$WEB_ROOT}/{$spamexperts}">{$LANG.navMarketConnectService.spamexperts}<em><br />{$LANG.store.emailServices.tagline}</em></a></li>{/if}
	{if $weebly}<li class="navicon navicon-websitebuilder"><a href="{$WEB_ROOT}/{$weebly}">{$LANG.navMarketConnectService.weebly}<em><br />{$LANG.store.websiteBuilder.tagline}</em></a></li>{/if}
	{if $sitelock}<li class="navicon navicon-sitelock"><a href="{$WEB_ROOT}/{$sitelock}">{$LANG.navMarketConnectService.sitelock}<em><br />{$LANG.store.sitelock.tagline}</em></a></li>{/if}
	{if $codeguard}<li class="navicon navicon-codeguard"><a href="{$WEB_ROOT}/{$codeguard}">{$LANG.navMarketConnectService.codeguard}<em><br />{$LANG.store.codeguard.cartTitle}</em></a></li>{/if}	
	{if $vpn}<li class="navicon navicon-vpn"><a href="{$WEB_ROOT}/{$vpn}">{$LANG.navMarketConnectService.sitelockvpn}<em><br />{$LANG.store.sitelockvpn.cartTitle}</em></a></li>{/if}
	{if $marketgoo}<li class="navicon navicon-marketgoo"><a href="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}<em><br />{$LANG.store.marketgoo.cartTitle}</em></a></li>{/if}	
	{if $ox}<li class="navicon navicon-ox"><a href="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}<em><br />{$LANG.store.ox.cartTitle}</em></a></li>{/if}	
{* End Marketplaceconnect links *}

And replace with the following:

{* Marketplaceconnect links *}
	{if $symantec}<li class="navicon navicon-ssl"><a href="{$WEB_ROOT}/{$symantec}">{$LANG.navMarketConnectService.symantec}<em><br />{$LANG.store.ssl.dv.tagline}</em></a></li>{/if}
	{if $spamexperts}<li class="navicon navicon-email"><a href="{$WEB_ROOT}/{$spamexperts}">{$LANG.navMarketConnectService.spamexperts}<em><br />{$LANG.store.emailServices.tagline}</em></a></li>{/if}
	{if $weebly}<li class="navicon navicon-websitebuilder"><a href="{$WEB_ROOT}/{$weebly}">{$LANG.navMarketConnectService.weebly}<em><br />{$LANG.store.websiteBuilder.tagline}</em></a></li>{/if}
	{if $sitelock}<li class="navicon navicon-sitelock"><a href="{$WEB_ROOT}/{$sitelock}">{$LANG.navMarketConnectService.sitelock}<em><br />{$LANG.store.sitelock.tagline}</em></a></li>{/if}
	{if $codeguard}<li class="navicon navicon-codeguard"><a href="{$WEB_ROOT}/{$codeguard}">{$LANG.navMarketConnectService.codeguard}<em><br />{$LANG.store.codeguard.cartTitle}</em></a></li>{/if}	
	{if $vpn}<li class="navicon navicon-vpn"><a href="{$WEB_ROOT}/{$vpn}">{$LANG.navMarketConnectService.sitelockvpn}<em><br />{$LANG.store.sitelockvpn.cartTitle}</em></a></li>{/if}
	{if $marketgoo}<li class="navicon navicon-marketgoo"><a href="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}<em><br />{$LANG.store.marketgoo.cartTitle}</em></a></li>{/if}	
	{if $ox}<li class="navicon navicon-ox"><a href="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}<em><br />{$LANG.store.ox.cartTitle}</em></a></li>{/if}	
	{if $sitebuilder}<li class="navicon navicon-sitebuilder"><a href="{$WEB_ROOT}/{$sitebuilder}">{$LANG.navMarketConnectService.siteBuilder}<em><br />{$LANG.store.siteBuilder.cartTitle}</em></a></li>{/if}
{* End Marketplaceconnect links *}

Find the following code (it may look slightly different but that is fine as we are replacing the whole section):

{* Marketplaceconnect links *}
	{if $symantec}<option value="{$WEB_ROOT}/{$symantec}">- {$LANG.navMarketConnectService.symantec}</option>{/if}
	{if $spamexperts}<option value="{$WEB_ROOT}/{$spamexperts}">- {$LANG.navMarketConnectService.spamexperts}</option>{/if}
	{if $weebly}<option value="{$WEB_ROOT}/{$weebly}">- {$LANG.navMarketConnectService.weebly}</option>{/if}
	{if $sitelock}<option value="{$WEB_ROOT}/{$sitelock}">- {$LANG.navMarketConnectService.sitelock}</option>{/if}
	{if $codeguard}<option value="{$WEB_ROOT}/{$codeguard}">- {$LANG.navMarketConnectService.codeguard}</option>{/if}
	{if $vpn}<option value="{$WEB_ROOT}/{$vpn}">- {$LANG.navMarketConnectService.vpn}</option>{/if}
	{if $marketgoo}<option value="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}</option>{/if}
	{if $ox}<option value="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}</option>{/if}	
{* End Marketplaceconnect links *}

And replace with the following:

{* Marketplaceconnect links *}
	{if $symantec}<option value="{$WEB_ROOT}/{$symantec}">- {$LANG.navMarketConnectService.symantec}</option>{/if}
	{if $spamexperts}<option value="{$WEB_ROOT}/{$spamexperts}">- {$LANG.navMarketConnectService.spamexperts}</option>{/if}
	{if $weebly}<option value="{$WEB_ROOT}/{$weebly}">- {$LANG.navMarketConnectService.weebly}</option>{/if}
	{if $sitelock}<option value="{$WEB_ROOT}/{$sitelock}">- {$LANG.navMarketConnectService.sitelock}</option>{/if}
	{if $codeguard}<option value="{$WEB_ROOT}/{$codeguard}">- {$LANG.navMarketConnectService.codeguard}</option>{/if}
	{if $vpn}<option value="{$WEB_ROOT}/{$vpn}">- {$LANG.navMarketConnectService.vpn}</option>{/if}
	{if $marketgoo}<option value="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}</option>{/if}
	{if $ox}<option value="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}</option>{/if}
	{if $sitebuilder}<option value="{$WEB_ROOT}/{$sitebuilder}">{$LANG.navMarketConnectService.siteBuilder}</option>{/if}
{* End Marketplaceconnect links *}

Open: /whmcs_path/templates/your_active_template/footer.tpl

Find the following code (it may look slightly different but that is fine as we are replacing the whole section):

{* Marketplaceconnect links *}
	{if $symantec}<li><a href="{$WEB_ROOT}/{$symantec}">{$LANG.navMarketConnectService.symantec}</a></li>{/if}		
	{if $spamexperts}<li><a href="{$WEB_ROOT}/{$spamexperts}">{$LANG.navMarketConnectService.spamexperts}</a></li>{/if}
	{if $weebly}<li><a href="{$WEB_ROOT}/{$weebly}">{$LANG.navMarketConnectService.weebly}</a></li>{/if}
	{if $sitelock}<li><a href="{$WEB_ROOT}/{$sitelock}">{$LANG.navMarketConnectService.sitelock}</a></li>{/if}
	{if $codeguard}<li><a href="{$WEB_ROOT}/{$codeguard}">{$LANG.navMarketConnectService.codeguard}</a></li>{/if}
	{if $vpn}<li><a href="{$WEB_ROOT}/{$vpn}">{$LANG.navMarketConnectService.sitelockvpn}</a></li>{/if}
	{if $marketgoo}<li><a href="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}</a></li>{/if}
	{if $ox}<li><a href="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}</a></li>{/if}
{* End Marketplaceconnect links *}

And replace with the following:

{* Marketplaceconnect links *}
	{if $symantec}<li><a href="{$WEB_ROOT}/{$symantec}">{$LANG.navMarketConnectService.symantec}</a></li>{/if}		
	{if $spamexperts}<li><a href="{$WEB_ROOT}/{$spamexperts}">{$LANG.navMarketConnectService.spamexperts}</a></li>{/if}
	{if $weebly}<li><a href="{$WEB_ROOT}/{$weebly}">{$LANG.navMarketConnectService.weebly}</a></li>{/if}
	{if $sitelock}<li><a href="{$WEB_ROOT}/{$sitelock}">{$LANG.navMarketConnectService.sitelock}</a></li>{/if}
	{if $codeguard}<li><a href="{$WEB_ROOT}/{$codeguard}">{$LANG.navMarketConnectService.codeguard}</a></li>{/if}
	{if $vpn}<li><a href="{$WEB_ROOT}/{$vpn}">{$LANG.navMarketConnectService.sitelockvpn}</a></li>{/if}
	{if $marketgoo}<li><a href="{$WEB_ROOT}/{$marketgoo}">{$LANG.navMarketConnectService.marketgoo}</a></li>{/if}
	{if $ox}<li><a href="{$WEB_ROOT}/{$ox}">{$LANG.navMarketConnectService.ox}</a></li>{/if}
	{if $sitebuilder}<li><a href="{$WEB_ROOT}/{$sitebuilder}">{$LANG.navMarketConnectService.siteBuilder}</a></li>{/if}
{* End Marketplaceconnect links *}

Open: /whmcs_path/templates/your_active_template/css/template.css

Add the following to the bottom of this file:

.navmain-mega ul li .sublinks li.navicon-sitebuilder { background: url("../images/icon-sitebuilder.png") 5px center no-repeat; }

5. Update Completed

You have now finished updating your template to support WHMCS v8.2. If you see any miss alignment when viewing your website you may need to clear your browser cache to force the updated files to be rendered. If you run into any issues, submit a ticket and we will be happy to assist you.

Request Support

We hope you found this documentation useful. If you run into any issues we will be happy to assist you.