Install an Envato WordPress Theme and Import Demo Content

by Fahim

You download a shiny new theme from ThemeForest, hit upload in the WordPress dashboard, and immediately run into: “The package could not be installed. The theme is missing the style.css stylesheet.” Or worse, you get past that hurdle, kick off the one-click demo importer, and watch it freeze at 40% before throwing a 504 Gateway Timeout.

I have built dozens of client sites on top of Envato themes over the years. In my experience, nearly every install failure boils down to two things: uploading the entire bundled archive instead of the installable theme zip, and running out of PHP memory or execution time while fetching assets. Here is how I unpack the package, tune the server limits, install the theme cleanly (via WP admin or WP-CLI), and

WordPress dashboard showing theme installation screen and PHP configuration code
WordPress dashboard showing theme installation screen and PHP configuration code

Unpack the ThemeForest Zip File Correctly

When you click Download on ThemeForest or Envato Elements, you usually get two choices: “All files & documentation” or “Installable WordPress file only”. If you grab the complete package, do not upload that master zip to WordPress directly.

That full archive contains licensing PDFs, design assets (PSD/Figma), plugin zips, documentation, and the actual theme. WordPress expects style.css right in the root directory of whatever zip you feed it. If it finds a Documentation/ or Licensing/ folder instead, the installer gives up on the spot.

Unzip the master download on your computer first. Inside, look for a file named something like themename.zip alongside themename-child.zip. That inner file is what WordPress actually needs. You can skim the WordPress Theme Structure Handbook to see what root files a valid theme directory requires.

Raise PHP Limits Before Running Any Importer

Envato demo importers pull down hundreds of megabytes of stock images, XML post trees, taxonomies, widgets, and slider data from external CDNs. Default PHP limits on most fresh hosting setups will kill the process midway through.

Before you even open the importer, bump your PHP runtime parameters to these minimums:

  • memory_limit: 256M (go for 512M if you’re running bulky multi-purpose themes like Avada or Betheme)
  • max_execution_time: 300
  • upload_max_filesize: 64M
  • post_max_size: 64M
  • max_input_vars: 3000

If you’re on Apache or LiteSpeed with cPanel/Plesk, add these directives to the .htaccess file in your WordPress root:

Add these configuration directives to your root .htaccess file:

php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value memory_limit 512M
php_value max_execution_time 300
php_value max_input_time 300
php_value max_input_vars 3000

If you are on Nginx or PHP-FPM where .htaccess doesn’t apply, update your php.ini or PHP-FPM pool config instead. We have a dedicated walkthrough on how to increase PHP memory limit in WordPress if your host restricts editing php.ini directly.

To make sure WordPress itself allocates that memory internally, drop this line near the top of your wp-config.php file, just above the /* That’s all, stop editing! */ comment:

Define the WordPress runtime memory limit in wp-config.php:

define('WP_MEMORY_LIMIT', '512M');
define('WP_MAX_MEMORY_LIMIT', '512M');

This ensures your background importer has enough breathing room to parse large XML trees and generate thumbnail crops without crashing.

Install Parent and Child Themes

Always install both the parent theme and its child theme. The parent theme gets updated with bug fixes and security patches from the author. If you write custom CSS, add hooks to functions.php, or override template files directly in the parent, the next theme update will wipe out your work completely.

Method A: Via the WordPress Admin Dashboard

  1. In your WordPress dashboard, go to Appearance > Themes.
  2. Click Add New Theme, then Upload Theme at the top.
  3. Choose your extracted themename.zip file and hit Install Now.
  4. Once it finishes, do not activate it yet. Go back to Appearance > Themes.
  5. Click Add New Theme > Upload Theme again, select themename-child.zip, and install it.
  6. Click Activate on the Child Theme.

Method B: Via WP-CLI on the Command Line

If you have SSH access, using WP-CLI is much faster and bypasses web server upload limits entirely.

Run these commands from your WordPress root directory:

# Upload your theme zips to the server, then run:
wp theme install path/to/themename.zip
wp theme install path/to/themename-child.zip --activate # Verify active theme status
wp theme list --status=active

WP-CLI unzips the files straight into wp-content/themes/, verifies the directory structures, and activates the child theme in seconds. If you manage custom setups alongside WordPress, check out our guide on how to deploy a web app on Hostinger with SSL for more command-line server workflows.

Install and Activate Bundled Core Plugins

Almost every Envato theme relies on companion plugins to power custom post types, shortcodes, and page builders (like Elementor or WPBakery). Most authors manage this with the TGM Plugin Activation library.

  1. Right after activating the child theme, you’ll see a notice: “This theme requires the following plugins…”
  2. Click Begin installing plugins.
  3. Tick the top-left checkbox to select all required plugins in the table.
  4. Set the Bulk Actions dropdown to Install and click Apply.
  5. Once they finish downloading, head back to that installer screen, select them all again, choose Activate, and hit Apply.

If a bundled commercial plugin (like Slider Revolution or ACF Pro) fails during auto-install, check the /plugins/ folder inside the master package you extracted earlier. You’ll usually find standalone .zip files you can upload manually via Plugins > Add New > Upload Plugin. For more details on standalone packages, take a look at our guide on how to install CodeCanyon PHP scripts on shared hosting.

Run the Demo Content Importer

Once all required plugins are active, head over to the theme’s import screen. Depending on the theme framework, authors tuck this under different menus:

  • Appearance > Import Demo Data (standard OCDI tool)
  • [Theme Name] > Demo Import / Starter Sites
  • Tools > Demo Importer

Pick only the specific demo you want. Multi-purpose themes often include dozens of homepage variants. Importing everything at once will bloat your database with hundreds of sample pages and clutter your media library with duplicate assets.

Select your layout, check the option to import media attachments, and start the import. Keep the browser tab open and don’t refresh. It usually takes between 2 and 5 minutes depending on the number of images being processed.

If your theme uses an onboarding wizard like Merlin WP, you can also refer to the Envato Market Help Center for theme-specific setup quirks.

Fix Common Post-Import Glitches

Even with a successful import, you will occasionally spot layout glitches. Here is how I fix the three most common ones.

1. The Homepage Displays a Standard Blog Feed

If your front page shows default blog posts instead of the designed landing page, the reading setting didn’t map automatically.

  1. Head to Settings > Reading in your admin sidebar.
  2. Under Your homepage displays, select A static page.
  3. In the Homepage dropdown, pick Home, Main Home, or whichever page name matches the demo.
  4. Set the Posts page to Blog.
  5. Click Save Changes.

2. Broken Menus and Empty Navigation Slots

Imported menus often lose their location assignments during database import.

  1. Navigate to Appearance > Menus.
  2. Click the Manage Locations tab.
  3. Assign the imported menu (e.g., “Main Menu”) to the theme’s matching location slot (like “Primary Navigation”).
  4. Hit Save Changes.

3. Elementor Styling or Container Width Errors

If the layout looks unstyled or fonts aren’t rendering properly after an Elementor demo import, the CSS cache is stale. (If Elementor hangs during this step, check our guide to fix Elementor stuck on loading screen.)

To flush and regenerate the styles:

  1. Go to Elementor > Tools.
  2. On the General tab, click Regenerate Files next to Regenerate CSS & Data.
  3. Click Sync Library.
  4. Click Save Changes at the bottom.

Set Up Automatic Theme Updates with the Envato Market Plugin

Envato themes don’t update through WordPress.org automatically. To get 1-click update alerts in your dashboard, install Envato’s official plugin.

  1. Download the free Envato Market WordPress Plugin.
  2. Install and activate the zip via Plugins > Add New > Upload Plugin.
  3. Open the new Envato Market item in your admin sidebar.
  4. Click the link to generate a personal API token on the Envato portal.
  5. Make sure these permissions are enabled on your token: View and search Envato sites, Download your purchased items, and List purchases you’ve made.
  6. Paste your token into the Token field in WordPress and save.

Your purchased themes and plugins will show up under that tab, allowing you to update them in one click without manually replacing files over SFTP.

Troubleshooting Common Demo Import Errors

Why did the demo import fail with a 500 or 504 error?

The PHP process timed out or hit its memory limit while downloading images. Bump max_execution_time to 300 and memory_limit to 512M in your .htaccess or wp-config.php. If your shared host won’t let you raise these, you can import the demo XML manually via Tools > Import > WordPress.

Why are all the imported demo images gray placeholders?

Most theme authors cannot legally redistribute copyrighted stock photos from their live previews. They replace them with numbered grey placeholders in the demo XML file. You just need to replace those images with your own assets.

Can I switch to a different demo layout after importing one?

Yes, but importing a second demo doesn’t overwrite the first—it appends duplicate pages, menus, and media items. If you’re still in staging, use a tool like WP Reset to wipe the database clean before running a different demo import.

Why does WordPress say the style.css file is missing?

You uploaded the whole bundle package instead of the theme zip. Unzip the download on your computer, find the nested [themename].zip file, and upload only that file under Appearance > Themes > Add New > Upload Theme.

Next Steps for Your New Theme Setup

With your child theme active and demo content loaded, check the site on mobile and delete any placeholder posts or unused contact forms the importer generated. If your theme bundled external premium plugins, check our tutorial on how to install CodeCanyon scripts and plugins to manage commercial licenses cleanly.

all_in_one_marketing_tool