Skip to main content

Active

GHL WordPress Setup Procedures

Purpose

This document provides step-by-step procedures for setting up and configuring WordPress hosting on the GoHighLevel platform. These are the procedural instructions referenced by the WordPress + GoHighLevel Developer Guide.

Document Relationship:

  • Developer Guide: Explains WHY (architecture, strategy, design patterns)
  • Setup Procedures: Explains HOW (step-by-step configuration)

Prerequisites

Required Access

  • Active GoHighLevel Agency account
  • WordPress hosting plan purchased through GHL
  • Domain ownership or ability to modify DNS settings
  • Access to client sub-account (if setting up for client)

Important Notes

  • WordPress hosting plans are in addition to the HighLevel plan (e.g., HighLevel Starter $97/mo + WordPress Standard $10/mo = $107/mo)
  • Setup includes domain DNS configuration which can take up to 48 hours to propagate

WordPress Hosting Plans Overview

Key Features Included

  • Global CDN network for fast loading times
  • Automatic daily backups at 05:00 AM CST
  • Manual backup capability
  • WordPress debugging tools and PHP error access
  • phpMyAdmin database management
  • FTP access available

Procedure 1: Enabling WordPress for Sub-Accounts

Step 1: Enable WordPress Feature

WordPress is hidden from all clients by default and must be enabled:

  1. Navigate to Agency View > Sub-Accounts
  2. Select the target sub-account
  3. Toggle the "Offer WordPress" option to make the WordPress menu available
  4. The WordPress option will now appear under Sites > WordPress

Step 2: Purchase WordPress Plan

  1. Go to Agency View > Reselling > WordPress
  2. Select appropriate plan for client needs
  3. Configure pricing markup if reselling to clients
  4. Complete purchase to activate hosting

Procedure 2: Creating a New WordPress Site

Step 1: Initial Site Setup

  1. Navigate to Sites > WordPress and click "+ Create Site"

  2. Configure Site Details:

    • Site name and description
    • Administrator username and password
    • Administrator email address
    • Select "I want to create a new website"
  3. Installation Process:

    • Installation takes a few minutes to complete
    • System will provision WordPress instance
    • You'll receive access to WordPress dashboard

Step 2: Domain Configuration

For New Domain Setup:

  1. In WordPress dashboard, click "Add Domain"
  2. Enter desired domain name
  3. System will verify if domain is available and not associated with another location

DNS Configuration Required:

  • For subdomain (blog.domain.com): Add CNAME record pointing to provided value
  • For root domain (domain.com): Add A record pointing to provided IP address

Procedure 3: Domain Setup and DNS Configuration

Supported Providers: Google Domains, GoDaddy, Cloudflare, IONOS

  1. In GHL WordPress Dashboard:

    • Enter domain name
    • Click "Configure Domain" if available
    • System detects DNS provider automatically
  2. Authorization Process:

    • Click "Authorize Domain" when prompted
    • Login to DNS provider (in new tab)
    • Follow authorization prompts
    • Close provider tab after authorization
    • Return to GHL to complete verification

Method 2: Manual DNS Setup

For Other Providers: Namecheap, Bluehost, etc.

  1. Get DNS Records from GHL:

    • WordPress dashboard will display required records
    • Note the CNAME and A record values
    • Copy TXT records for SSL verification
  2. Add Records to DNS Provider:

    For Subdomain (www.domain.com or blog.domain.com):

    Type: CNAME
    Name: www (or subdomain prefix)
    Value: [provided value like wp1.msgsndr.com]
    TTL: 600 (or lowest available)

    For Root Domain (domain.com):

    Type: A
    Name: @ (or leave blank)
    Value: [provided IP address]
    TTL: 600 (or lowest available)

    For SSL Certificate:

    Type: TXT
    Name: [provided name]
    Value: [provided verification string]
    TTL: 600 (or lowest available)

Critical DNS Settings

  • For Cloudflare users: Set proxy status to "DNS Only" (gray cloud icon)
  • Configure TTL to 600ms or lowest possible for optimal propagation
  • Ensure no duplicate A records exist for the same domain

Verification Process

  1. In WordPress Dashboard:

    • Click "Verify DNS Records"
    • Monitor status using 'Verified/Not Verified' tags
    • Check SSL certificate status with 'SSL Issued/SSL Not Issued' tags
  2. Propagation Timeline:

    • Most DNS updates activate within an hour
    • Global propagation can take up to 48 hours
    • Use tools like https://dnschecker.org/ to verify propagation status

Procedure 4: Migrating Existing WordPress Sites

Overview

Migrating an existing WordPress site to GHL hosting requires a two-stage DNS process to verify domain ownership while keeping the current site live during migration.

Step 1: Prepare Migration

  1. In Sites > WordPress:

    • Select "I want to move my existing website over"
    • System provides a randomly generated verification CNAME
    • Note this verification subdomain and target value
  2. Backup Current Site:

    • Install All-in-One WP Migration plugin on existing site
    • Navigate to All-in-One WP Migration > Export
    • Select "Export To > File"
    • Download backup file to local computer
    • Keep backup file accessible for later upload

Step 2: Domain Verification (Stage 1)

Purpose: Verify domain ownership without affecting live site

  1. Create Verification DNS Record:

    • Log into your DNS provider
    • Add new CNAME record with values from GHL:
      Type: CNAME
      Name: [provided verification subdomain, e.g., verify-abc123]
      Value: [provided target, e.g., verify.msgsndr.com]
      TTL: 600
  2. Verify in GHL:

    • Return to GHL WordPress setup
    • Click "Verify Domain Ownership"
    • Wait for verification confirmation
    • Do not proceed until verification succeeds

Step 3: Site Migration

  1. Access New WordPress Instance:

    • After verification, GHL provisions your WordPress instance
    • Access via provided temporary URL or wp-admin
    • Log in with credentials created during setup
  2. Install Migration Plugin:

    • In new WordPress instance, install All-in-One WP Migration
    • Activate the plugin
  3. Import Backup:

    • Navigate to All-in-One WP Migration > Import
    • Click "Import From > File"
    • Upload backup file from Step 1
    • Confirm import and wait for completion
    • Plugin will restore entire site (content, plugins, themes, settings)
  4. Update URLs:

    • Navigate to Settings > General
    • Update "WordPress Address (URL)" to your final domain
    • Update "Site Address (URL)" to your final domain
    • Save changes

Step 4: DNS Cutover (Stage 2)

Purpose: Point production domain to new GHL WordPress instance

Important: Only proceed when site is fully migrated and tested on temporary URL

  1. Update DNS Records:

    • Log into DNS provider
    • Modify or add production domain records:

    For www subdomain:

    Type: CNAME
    Name: www
    Value: [provided by GHL, e.g., wp1.msgsndr.com]
    TTL: 600

    For root domain:

    Type: A
    Name: @ (or leave blank)
    Value: [IP address provided by GHL]
    TTL: 600

    For SSL certificate:

    Type: TXT
    Name: [provided by GHL]
    Value: [verification string provided by GHL]
    TTL: 600
  2. Remove Old Records:

    • Delete or disable old A/CNAME records pointing to previous host
    • Keep only the new GHL-pointing records
    • For Cloudflare: Ensure proxy is OFF (gray cloud)
  3. Verify Propagation:

    • Use https://dnschecker.org/ to monitor DNS propagation
    • Check that domain resolves to new GHL IP
    • Test site access at production URL
    • Verify SSL certificate issues successfully

Step 5: Post-Migration Validation

  1. Functionality Testing:

    • Test all pages load correctly
    • Verify forms submit properly
    • Check embedded media displays
    • Test mobile responsiveness
    • Confirm admin panel access
  2. Performance Testing:

    • Check page load speeds
    • Verify CDN is active
    • Test from multiple geographic locations
  3. SEO Validation:

    • Verify site is accessible to search engines
    • Check robots.txt file
    • Confirm XML sitemap is accessible
    • Validate structured data/schema markup
  4. Integration Testing:

    • Test LeadConnector plugin functionality
    • Verify GHL forms work correctly
    • Check chat widget loads properly
    • Confirm calendar embeds function
  5. Backup Verification:

    • Confirm GHL automatic backups are running
    • Create manual backup of successfully migrated site
    • Document backup restoration process if needed

Procedure 5: Post-Setup Configuration

Install Standard Plugin Stack

Required Plugins:

  1. Elementor (free version)

    • Install from WordPress plugin repository
    • Activate plugin
  2. Elementor Pro

    • Upload and install Elementor Pro zip file
    • Activate with agency license key
    • Configure global settings
  3. SearchAtlas SEO Plugin

    • Install from WordPress plugin repository
    • Activate plugin
    • Connect to SearchAtlas account
    • Configure OTTO Pixel
  4. LeadConnector

    • Install from WordPress plugin repository
    • Activate plugin
    • Connect to GHL sub-account
    • Configure chat widget settings
  5. Hello Elementor Theme

    • Install from WordPress theme repository
    • Activate as site theme

Configure Elementor Global Settings

  1. Global Colors:

    • Navigate to Elementor > Settings > Style
    • Add client brand colors
    • Label each color clearly
    • Save settings
  2. Global Fonts:

    • Configure primary and secondary fonts
    • Set default font weights
    • Configure heading and body text styles
  3. Page Settings:

    • Set default page width
    • Configure container padding
    • Set mobile breakpoints if needed

Configure SearchAtlas OTTO

  1. Install OTTO Pixel:

    • Copy OTTO pixel code from SearchAtlas dashboard
    • In WordPress, navigate to SearchAtlas > Settings
    • Paste pixel code
    • Verify pixel is firing
  2. Connect Google Search Console:

    • Link GSC account in SearchAtlas dashboard
    • Verify site ownership
    • Allow data import
  3. Configure Automation Settings:

    • Set auto-implementation preferences
    • Configure notification settings
    • Review initial SEO audit

Configure LeadConnector

  1. Connect GHL Account:

    • Navigate to LeadConnector > Settings
    • Authorize connection to GHL sub-account
    • Verify connection successful
  2. Configure Chat Widget:

    • Select default chat widget
    • Set display rules (all pages, specific pages, etc.)
    • Configure widget position and style
    • Test widget loads correctly
  3. Form Integration:

    • Verify forms from GHL are accessible
    • Test form embedding methods
    • Confirm form submissions route to CRM

Procedure 6: Additional Domain Management

Adding Additional Domains

  1. In WordPress Dashboard:
    • Navigate to domain management section
    • Click "Add Domain"
    • Enter additional domain name
    • Follow DNS configuration process (see Procedure 3)

Changing Primary Domain

  1. In WordPress Dashboard:

    • Navigate to domain management
    • Select new primary domain from list
    • Confirm domain change
    • Update WordPress URL settings if needed
  2. Update Settings:

    • Navigate to Settings > General
    • Verify WordPress Address and Site Address match new primary domain
    • Save changes

SSL Certificate Management

Automatic SSL:

  • GHL automatically provisions Let's Encrypt SSL certificates
  • Certificates auto-renew before expiration
  • Monitor SSL status in WordPress dashboard

Manual SSL Certificate:

  1. Obtain SSL certificate from provider
  2. Contact GHL support to install custom certificate
  3. Provide certificate, private key, and chain files

Procedure 7: Backup and Restore

Manual Backup Creation

  1. In WordPress Dashboard:
    • Navigate to backup section
    • Click "Create Manual Backup"
    • Add backup description/label
    • Confirm backup creation
    • Wait for backup completion

Backup Download

  1. Access Backup List:
    • Navigate to backup management
    • Locate desired backup
    • Click "Download"
    • Save backup file locally

Backup Restoration

  1. In WordPress Dashboard:
    • Navigate to backup section
    • Locate backup to restore
    • Click "Restore"
    • Confirm restoration
    • Wait for process to complete
    • Verify site functionality after restoration

Procedure 8: Database and FTP Access

phpMyAdmin Access

  1. In GHL WordPress Dashboard:

    • Navigate to advanced settings
    • Click "phpMyAdmin Access"
    • System opens phpMyAdmin interface
    • Log in with provided credentials
  2. Database Operations:

    • Select WordPress database
    • Execute queries carefully
    • Always backup before database modifications
    • Document all changes made

FTP Access Configuration

  1. Request FTP Credentials:

    • Contact GHL support for FTP access
    • Receive FTP host, username, and password
    • Note: FTP may not be available on all plans
  2. Connect via FTP Client:

    • Use FileZilla or similar FTP client
    • Enter host, username, password
    • Connect to WordPress file system
    • Navigate to /wp-content/ for themes/plugins

Troubleshooting Common Issues

DNS Not Propagating

Symptoms: Domain not resolving to new site after 24+ hours

Solutions:

  • Verify DNS records exactly match GHL-provided values
  • Check for duplicate or conflicting records
  • For Cloudflare: Ensure proxy is OFF (gray cloud)
  • Clear local DNS cache: ipconfig /flushdns (Windows) or sudo dscacheutil -flushcache (Mac)
  • Test with multiple DNS checker tools

SSL Certificate Not Issuing

Symptoms: Site shows "Not Secure" or certificate error

Solutions:

  • Verify TXT record for SSL verification is present
  • Confirm DNS records are fully propagated
  • For Cloudflare: Disable "Always Use HTTPS" temporarily
  • Wait 24-48 hours for certificate issuance
  • Contact GHL support if issue persists beyond 48 hours

Migration Site Not Loading Correctly

Symptoms: After migration, site shows errors or missing content

Solutions:

  • Verify WordPress Address and Site Address are correct in Settings > General
  • Clear WordPress cache if caching plugin is active
  • Regenerate permalinks: Settings > Permalinks > Save Changes
  • Check file permissions are correct (755 for directories, 644 for files)
  • Review PHP error logs for specific error messages

Forms Not Submitting to GHL

Symptoms: Forms appear but submissions don't reach GHL CRM

Solutions:

  • Verify LeadConnector plugin is active and connected
  • Check form embed code is correct
  • Test form directly in GHL to isolate issue
  • Review browser console for JavaScript errors
  • Confirm GHL sub-account connection is valid

Support and Resources

GHL Support

  • WordPress hosting support: Available 24/7
  • Submit tickets through GHL support portal
  • Live chat available for urgent issues

Documentation

Internal Resources

  • WordPress + GHL Developer Guide (strategic/architectural reference)
  • Symphony Core documentation repository
  • #wordpress-support Slack channel

Document Maintenance

Review Schedule: Quarterly or when GHL updates WordPress hosting features

Update Triggers:

  • GHL WordPress hosting platform updates
  • DNS configuration process changes
  • New troubleshooting patterns identified
  • Support ticket trend analysis

Feedback: Submit suggestions to #documentation channel


Document Status: Active

Last Updated: 2025-10-02

Version: 2.0 (Renamed and expanded from sc-ghl-wordpress-config.md)