Skip to main content

Prerequisites

Before installing VertiSub CMS, ensure your server meets these requirements:
1

Server Requirements

  • WordPress: Version 6.1 or higher
  • PHP: Version 8.0 or higher
  • MySQL: Version 5.7 or higher (or MariaDB 10.2+)
  • Web Server: Apache or Nginx
  • Memory: Minimum 256MB PHP memory limit (512MB recommended)
2

Required Plugins

The theme depends on these WordPress plugins:
  • Advanced Custom Fields (ACF) - Required for custom meta fields
The theme will not function correctly without ACF installed and activated.

Installation Methods

You can install VertiSub CMS using one of three methods:
1

Download the Theme

Obtain the theme ZIP file (vertisubtheme.zip) from your provider.
2

Access WordPress Admin

Log in to your WordPress dashboard:
https://yoursite.com/wp-admin
3

Upload Theme

Navigate to Appearance → Themes → Add New → Upload Theme
  1. Click “Choose File” and select the vertisubtheme.zip file
  2. Click “Install Now”
  3. Wait for the upload and installation to complete
4

Activate Theme

Once installed, click the Activate button to enable the theme.

Method 2: FTP/SFTP Upload

1

Extract Theme Files

Unzip the vertisubtheme.zip file on your local computer.
2

Connect via FTP

Use an FTP client (FileZilla, Cyberduck, etc.) to connect to your server:
Host: ftp.yoursite.com
Username: your-ftp-username
Password: your-ftp-password
Port: 21 (or 22 for SFTP)
3

Upload to WordPress

Upload the extracted vertisubtheme folder to:
/wp-content/themes/
The final path should be:
/wp-content/themes/vertisubtheme/
4

Activate in WordPress

Go to Appearance → Themes in WordPress admin and activate VertiSub Theme.

Method 3: WP-CLI Installation

For advanced users with command-line access:
# Navigate to WordPress installation
cd /path/to/wordpress

# Install theme from ZIP
wp theme install vertisubtheme.zip

# Activate the theme
wp theme activate vertisubtheme

# Verify installation
wp theme list

Installing Required Plugins

After installing the theme, install and activate required plugins:
1

Install Advanced Custom Fields

Via WordPress Admin:
  1. Go to Plugins → Add New
  2. Search for “Advanced Custom Fields”
  3. Click Install Now on the ACF plugin by Delicious Brains
  4. Click Activate after installation
Via WP-CLI:
wp plugin install advanced-custom-fields --activate
2

Verify Plugin Activation

Go to Plugins → Installed Plugins and ensure ACF shows as “Active”.
You should see “Custom Fields” in your WordPress admin menu after activation.

Post-Installation Configuration

After installing the theme and plugins, complete these configuration steps: For the custom post types to work correctly:
1

Configure Permalinks

  1. Go to Settings → Permalinks
  2. Select Post name option (recommended)
  3. Click Save Changes
Custom Structure: /%postname%/
Using “Plain” permalinks will prevent custom post type URLs from working correctly.
2

Flush Rewrite Rules

The theme registers custom rewrite rules. After activating, visit the Permalinks page to flush the rules.Via WP-CLI:
wp rewrite flush

2. Configure Menus

The theme uses a custom menu system with dropdown support:
menu.php
// The theme registers this menu location
register_nav_menus(array(
    'primary_menu' => __('Primary Menu', 'vertisub-theme'),
));
1

Create Menu

  1. Go to Appearance → Menus
  2. Click Create a new menu
  3. Name it “Main Menu” or “Primary Navigation”
  4. Click Create Menu
2

Add Menu Items

Add pages, custom post types, or custom links to your menu:
  • Services
  • Courses
  • Certifications
  • About Us
  • Contact
3

Assign Menu Location

Under Menu Settings, check Primary Menu and click Save Menu.
Customize your site’s logo:
1

Access Customizer

Go to Appearance → Customize → Site Identity
2

Upload Logo

  1. Click Select Logo
  2. Upload your logo image (PNG or SVG recommended)
  3. Recommended dimensions: 300x100px
  4. Click Select then Publish
The logo will appear in the header:
header.php:30
if (function_exists('the_custom_logo') && has_custom_logo()) {
    $custom_logo_id = get_theme_mod('custom_logo');
    $logo = wp_get_attachment_image_src($custom_logo_id, 'full');
    echo '<img src="' . esc_url($logo[0]) . '" alt="' . get_bloginfo('name') . '" style="width:130px; height:auto;">';
} else {
    bloginfo('name');
}

4. Configure Custom Image Sizes

The theme automatically creates these image sizes:
setup.php:31
add_image_size('hero-image', 1920, 1080, true);
add_image_size('service-thumb', 400, 300, true);
To regenerate thumbnails for existing images, install the “Regenerate Thumbnails” plugin and run it once.

5. Test Custom Post Types

Verify that all custom post types are registered:
1

Check Admin Menu

You should see these new menu items:
  • Servicios (Services) - with hammer icon
  • Cursos (Courses) - with awards icon
  • Certificaciones (Certifications) - with awards icon
  • Países (Countries)
  • Clientes (Clients)
  • Documentos (Documents)
2

Test Post Type Creation

Try creating a test post in each custom post type to ensure they work correctly.

Theme Structure Verification

Verify your theme installation is complete:
wp-content/themes/vertisubtheme/
├── functions.php Main theme file
├── style.css Main stylesheet
├── header.php Header template
├── footer.php Footer template
├── index.php Main template
├── inc/ Core includes
   ├── setup.php
   ├── enqueue.php
   ├── security.php
   ├── performance.php
   ├── menu.php
   ├── customize.php
   ├── utils.php
   └── cpts/
       ├── services.php
       ├── courses.php
       ├── certification.php
       ├── countries.php
       ├── clients.php
       └── documents.php
├── templates/ Page templates
└── components/ Reusable components

Troubleshooting Installation

Theme Not Appearing

# Ensure proper permissions
chmod 755 /wp-content/themes/vertisubtheme
chown -R www-data:www-data /wp-content/themes/vertisubtheme

Custom Post Types Not Showing

If custom post types don’t appear after activation:
  1. Flush Permalinks: Go to Settings → Permalinks and click Save
  2. Check PHP Version: Ensure you’re running PHP 8.0+
  3. Enable Debug Mode: Add to wp-config.php:
wp-config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Missing Styles

If the site looks unstyled:
  1. Clear Cache: Clear any caching plugins
  2. Check Console: Open browser DevTools and check for 404 errors
  3. Verify Enqueue: Ensure enqueue.php is being loaded properly
functions.php:12
// Verify this line exists
require_once VERTISUB_DIR . '/inc/enqueue.php';

Security Considerations

After installation, the theme automatically implements these security measures:
security.php:14
function vertisub_security_headers() {
    header('X-Content-Type-Options: nosniff');
    header('X-Frame-Options: SAMEORIGIN');
    header('X-XSS-Protection: 1; mode=block');
}
add_action('send_headers', 'vertisub_security_headers');
These headers protect against XSS attacks, clickjacking, and MIME-type sniffing.

Performance Optimization

The theme includes performance features out of the box. For additional optimization:
  1. Install a Caching Plugin: WP Rocket, W3 Total Cache, or WP Super Cache
  2. Enable Gzip Compression: Via server configuration
  3. Use a CDN: For external assets (Bootstrap, Font Awesome, etc.)
  4. Optimize Images: Use WebP format and lazy loading

Next Steps

Your theme is now installed! Continue with:

Quick Start Guide

Create your first service and course

Theme Reference

Learn about custom post types in detail

Getting Help

If you encounter issues during installation:
  • Check the PHP error log: /wp-content/debug.log
  • Verify server requirements are met
  • Contact Vertisub support with your WordPress and PHP versions
Always backup your database and files before installing or updating the theme!

Build docs developers (and LLMs) love