Configuring WordPress in wp-config.php File: From Basic to Advanced

During the installation process, WordPress creates a configuration file called wp-config.php. Primarily, this file contains database credentials that allow WordPress to establish a connection with the database. Additionally, there are more settings to configure other database elements, security keys and developer options in the wp-config.php file. In this article, we will explore the wp-config.php file’s functionality, find its location in your WordPress installation, and show custom settings that can be added to it. Let’s dive in to learn more about configuring WordPress in wp-config.php!

What is the wp-config.php file?

The wp-config.php file isn’t included in the default installation package of WordPress, but you can find the wp-config-sample.php file there. This file is located in the WordPress root directory and contains the database configuration details of the site.

configuring WordPress in wp-config.php

When installing WordPress you’re asked to input the following database information: database name, username, password, database host and table prefix. Then, the installer will create a wp-config.php file based on the provided information. From there you should be able to start configuring WordPress in wp-config.php.

configuring WordPress in wp-config.php

In case you need to create the configuration file manually, you can use the sample wp-config-sample.php file. Just rename it to wp-config.php and edit its content, which is required for the installation process mentioned above. Note: Don’t change the order of the code, as rearranging it may create errors on your site. Below you can find the default content of the wp-config.php file:

 * The base configuration for WordPress
 * The wp-config.php creation script uses this file during the installation.
 * You don't have to use the web site, you can copy this file to "wp-config.php"
 * and fill in the values.
 * This file contains the following configurations:
 * * MySQL settings
 * * Secret keys
 * * Database table prefix
 * @link
 * @package WordPress

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );

/** MySQL database username */
define( 'DB_USER', 'username_here' );

/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

 * Authentication unique keys and salts.
 * Change these to different unique phrases! You can generate these using
 * the {@link secret-key service}.
 * You can change these at any point in time to invalidate all existing cookies.
 * This will force all users to have to log in again.
 * @since 2.6.0
define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );


 * WordPress database table prefix.
 * You can have multiple installations in one database if you give each
 * a unique prefix. Only numbers, letters, and underscores please!
$table_prefix = 'wp_';

 * For developers: WordPress debugging mode.
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 * For information on other constants that can be used for debugging,
 * visit the documentation.
 * @link
define( 'WP_DEBUG', false );

/* Add any custom values between this line and the "stop editing" line. */

/* That's all, stop editing! Happy publishing. */

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
	define( 'ABSPATH', __DIR__ . '/' );

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

Basic configurations of the wp-config.php file

In the sample configuration file you can see the following configuration blocks:

  • MySQL settings
  • Secret keys
  • Database table prefix
  • WordPress debugging mode

Let’s take a closer look at these blocks.

MySQL settings

The MySQL settings block consists of your WordPress database configuration, such as database name, username, password and hostname.

/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );

/** MySQL database username */
define( 'DB_USER', 'username_here' );

/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

You can find all the information required by this section in your hosting control panel or by asking your hosting provider support. Also, this block contains the database character set and database collate type settings.

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

When configuring these settings you can define database tables with the appropriate character set (charset). As the default charset WordPress assigns UTF8, which supports any language. The database collation determines how the database sorts your data. Mostly, the database collation value should be left blank, so it will be automatically assigned by MySQL based on the database character set specified by charset. Usually there is no reason to change the default value of DB_CHARSET and DB_COLLATE, however, you can change them if needed according to the character sets and collations supported by MySQL. Note: Using the wrong combination of charset and collation values may cause different errors in the WordPress database.

Secret keys

In the secret keys block of the wp-config.php file WordPress stores a set of authentication unique keys and salts, which provide an extra layer of security for your site against attacks by adding random elements to the password. This block contains eight variables that consist of random strings of data.

define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

You can change the values to yours by changing the “put your unique phrase here” fields. The unique keys can be generated by visiting the WordPress secret keys service.

Database table prefix

The database table prefix is the value placed in front of the WordPress database tables. By default, WordPress sets this value as “wp_” in the wp-config file.

 * WordPress database table prefix.
 * You can have multiple installations in one database if you give each
 * a unique prefix. Only numbers, letters, and underscores please!
$table_prefix = 'wp_';

Changing the database prefix to a unique value is one of the steps to improve your database security against SQL injection attacks. Also, using unique table prefixes in different WordPress installations allows you to store data from different sites in one database.

WordPress debugging mode

The default wp-config.php file has a useful setting for WordPress developers where the debug mode can be enabled. When debug mode is turned on and there is an error, you’ll see the error notification on your site. WordPress turns off the debug mode by default as shown in the following code line:

define( 'WP_DEBUG', false );

To turn the debug mode on you need to replace the “false” value with “true”:

define( 'WP_DEBUG', true );

Note: You should disable debug mode on a live site, as errors and warnings that may be shown to site visitors can provide valuable information about your site and it’s not secure. We will describe later in this article how to use debug mode safely.


ABSPATH is a PHP constant defined at the bottom of the wp-config.php file, which states the absolute path to the WordPress directory.

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
	define( 'ABSPATH', __DIR__ . '/' );

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

This code snippet is placed after the following comment:

/* That's all, stop editing! Happy publishing. */

That means WordPress does not recommend modifying the lines of code after it.

Advanced wp-config.php configurations

In the previous section we reviewed default settings of the wp-config. php file. In addition to basic configurations for WordPress in the wp-config. php file, you can add advanced ones, which we will describe below. One important thing: All code snippets should be placed above the line “/* That’s all, stop editing! Happy publishing. */”, otherwise your custom settings won’t work. 

WordPress URL

When moving the site to a new domain or server it’s necessary to change the WordPress URL. You can change it in the site dashboard via the Settings > General section.

It may happen that these fields can’t be edited in the dashboard. In this case you can change the WordPress URL by adding the following code snippet in the wp-config.php file.

define( 'WP_HOME', 'http://your-new-domain' );
define( 'WP_SITEURL', 'http://your-new-domain' );

The value of the WP_SITEURL is the address where your WordPress core files are located. The WP_HOME value is the address your visitors type in their browser to reach your website. Both constant values should include ‘http://’ or ‘https://’ and shouldn’t have a slash symbol “/” at the end. Setting WP_SITEURL and WP_HOME in wp-config.php can reduce the number of database calls when loading your site, as by default these values are stored in the wp_options table.

Upload Directory

The Uploads directory stores all media you upload via WP Dashboard > Media. By default, WordPress sets the uploads path to “wp-content/uploads”. You can redefine this value to yours in wp-config.php by adding the following code snippet.

define( 'UPLOADS', 'wp-content/custom-folder' );

To store media files in a directory outside the wp-content folder, use the code snippet below:

define( 'UPLOADS', ''.'media' );

Note: The value doesn’t require a leading slash, as this path is relative to ABSPATH.

wp-content Directory

WordPress allows you to move the wp-content directory, which stores your themes, plugins, and uploads, outside of the WordPress app directory. It’s one of the methods to secure your site from malware injection attacks. To do that you need to redefine WP_CONTENT_DIR: 

define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/new-folder/wp-content' );

and change the location of the wp-content URL by changing the WP_CONTENT_URL value:

define( 'WP_CONTENT_URL', 'http://yourdomain/new-folder/wp-content' );

Theme Directory

The theme directory can’t be simply changed via wp-config because its path is hardcoded relative to the wp-content folder:

$theme_root = WP_CONTENT_DIR . '/themes';

In this case, additional theme directories can be registered as described in the article entitled Register theme directory.

Plugins Directory

As for moving the Plugins folder, it can be easily changed by using the following code snippets in the wp-config.php file.

define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/wp-content/new-folder/plugins' );
define( 'WP_PLUGIN_URL', 'http://yourdomain/wp-content/new-folder/plugins' );

The first code line sets the WP_PLUGIN_DIR and the second one sets the  WP_PLUGIN_URL value.

Custom User Table and User Meta Table

WordPress has the wp_user table in the database to store user data. If you need a custom user table, add the following code in wp-config.

define( 'CUSTOM_USER_TABLE', $table_prefix.'my_users' );

If you created a custom user table, then you need to create a custom user metadata table as well.

define( 'CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta' );

Language and Language Directory

WordPress version 4.0 users can change language in WP Dashboard > Settings > General.

It’s also possible to change language via the wp-config.php file during the WordPress installation process. Use this code to change language and define the language directory where the language files will be stored.

define( 'WPLANG', 'it_IT' );
define( 'WP_LANG_DIR', dirname(__FILE__) . 'wordpress/languages' );

The WPLANG language code can be found here in the WP Locale column.

Memory Size Limit

In WordPress, you can set the amount of PHP memory that is required to execute scripts by using the WP_MEMORY_LIMIT option. The thing you need to consider is this option changes PHP Memory only for WordPress and not other applications. By default, WordPress allocates 40M for a single site and 64M for multisite. To increase, for example, to 256M, you need to add this code in wp-config.

define( 'WP_MEMORY_LIMIT', '256M' );

Also, you can increase or decrease PHP memory from the WP_MEMORY_LIMIT for the administration area by defining WP_MAX_MEMORY_LIMIT.

define( 'WP_MAX_MEMORY_LIMIT', '256M' );

File Permissions

The file permission setting determines who can view, modify and execute files and folders of the site. Each permission level is represented by a 3-digit code that consists of the following:

no access0 (-)
execute1 (x)
write2 (w)
read4 (r)

In wp-config you can override the default file permissions with help of two constants: FS_CHMOD_DIR and FS_CHMOD_FILE. In the example below we will set permissions for directories to “755” (read, write and execute for the owner; read and execute for the group; read and execute for others), and for the files to “644” (read, write and execute for the owner; read for the group; read for others).

define( 'FS_CHMOD_DIR', ( 0755 & ~ umask() ) );
define( 'FS_CHMOD_FILE', ( 0644 & ~ umask() ) );

As the permissions are octal values they are prefixed with a 0. You can find more information about file permissions in this article.

WordPress Auto Updates

WordPress allows the auto-update feature during the installation process. However, there are different situations when autoupdate can affect your site functionality, and in this case, it’s better to disable the auto-updates by adding the following code.


Also, since WordPress version 3.7 you can manage core updates with the WP_AUTO_UPDATE_CORE constant. To disable all core updates use this code.

define( 'WP_AUTO_UPDATE_CORE', false );

There is also the ability to enable core updates for minor releases.

define( 'WP_AUTO_UPDATE_CORE', 'minor' );

Content Related Settings (autosave interval, post revisions)

These types of settings may be useful as your website grows. When you edit any posts, WordPress adds an entry to the posts table, which allows you to restore previous posts/pages revisions. Though it’s a cool functionality, it can generate a problem when your site gets big. In this case you can disable/reduce the number of post revisions and reduce the autosave interval. WordPress saves revisions each 60 seconds automatically, but it can be changed (for example, to 180 sec) using this code:

define( 'AUTOSAVE_INTERVAL', 180 );

To decrease the number of posts revision (set to 5) add this code:

define( 'WP_POST_REVISIONS', 5 );

or disable them at all using:

define( 'WP_POST_REVISIONS', false );

Debugging Mode advanced settings

Earlier in this article we described how to enable the debug mode in the wp-config.php file. However, in this case all errors and notices will be visible to our site’s visitors, which poses a security risk. After setting WP_DEBUG constant to “true” you need to add a few lines of code below, so the full code will look like this:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

In this way, all errors, notices and warnings will log to a file called debug.log, which will be generated in the wp-content directory so that no errors are shown on the site.

Lockdown the wp-config.php file

As you can see, the wp-config.php file contains not only the database settings, but also other important configurations of your WordPress site, so there is a reasonable question as to how to protect it. One of the methods is to use the following directives in the web server settings:

For Apache web servers, add this code to the .htaccess file:

<files wp-config.php>
order allow,deny
deny from all

For Nginx web servers, add this code to the configuration file:

location ~* wp-config.php { deny all; }

Note: These directives should be applied only after all configurations are completed.


In this article we described the WordPress configuration file called wp-config and defined its functional purpose. This file is created during the WordPress installation process and, mainly, it contains the database credentials to establish a connection between the site and the database. Along with the basic configurations (secret keys, database table prefix, etc.), it can be supplemented with other advanced settings, such as: changing location of the uploads, wp-content and plugins directories; customizing user table; allocating WP Memory size; setting file permissions and much more. Unfortunately, it’s hard to review all possible custom configurations of the wp-config.php file in one article, so in this one we provided the most popular settings that can be helpful when configuring WordPress in the wp-config.php file.

Customizing WordPress RSS Feed with Code: The Easy Way

Is RSS dead? That was the question that I was asking myself when I decided to write this post. Veteran users of the internet are probably familiar with Google Reader. The golden days of RSS were those days that everyone was aggregating their beloved website feeds using apps such as Google Reader and had everything in one place. Many still believe that Google’s most successful attempt to run a social network was Google Reader, although it went offline in 2013. But with the  shutting down of feed aggregators such as GReader, is RSS dead? Not exactly. RSS is still alive; however, it is being used less than before. You may still find apps and websites that allow you to aggregate RSS feeds in one place and have your beloved blogs in your pocket, but they are more useful than you might think.

Honestly, the reason that I was encouraged to write this post is that one of our clients wanted to modify the RSS feed of their website to be able to connect it to an app that was pulling their events data from one of the custom post types created on their WordPress website. But, instead of the event date, it was pulling the post publish date. He asked this question at the support desk and I thought it was a really interesting question. After searching around a little bit, I decided to share what I knew about customizing the WordPress RSS feed in this article. Let’s take a closer look.

What is a feed and what types of feed does WordPress support?

Based on what Wikipedia says: A web feed (or news feed) is a data format used for providing users with frequently updated content in raw format. Simply put, it allows users to see a website’s updated content without visuals. Common web feed formats are ATOM, RSS and JSON. RSS and ATOM are presented in XML format.

RSS or Really Simple Syndication is a web feed that allows users and applications to access updates to websites in XML format. Subscribing to RSS feeds can allow a user to keep track of many different websites in a single news aggregator app or website and removes the need for users to manually check them. 

WordPress supports both ATOM and RSS and RDF feeds by default. Using this doc, you can get the default WordPress feeds link like this:

For RSS 2.0 feed:

<?php bloginfo('rss2_url'); ?>

And for ATOM feed:

<?php bloginfo('atom_url'); ?>
customizing WordPress RSS feed
Example of a RSS 2.0 feed, default web feed of WordPress

What are the use cases for RSS feeds?

Most of the time, RSS feeds are used in news aggregators such as Feedly or Inoreader. They simply allow you to compile all the websites you love in one place. This is particularly useful if you are a geek, author, stock trader or bibliophile. More than that, if you want to show another website feed somewhere on your website, you can simply use a feed reader widget on it.

Earlier I mentioned that one of our clients wanted to show their Event post type feed in an app. They created the Event post type using the bundled plugin Jet Engine and the Jupiter X theme to easily add their meta field, but they needed the date field to show instead of the publish date of the post. This is probably a popular topic out there for those who want to showcase events on their Mailchimp RSS campaigns (to be able to send event dates through the newsletters once the event is published)! 

There are many more use cases than what I’ve written about here for sure, but it’s enough to show the importance of RSS feed customization methods.

How to modify feed content using WordPress actions and filters

I’m going to show you how you can modify feed content using WordPress actions and filters. But wait a minute… if it’s possible, why not just use third party plugins to modify the feed content? Customizing the WordPress RSS feed using a plugin is quite simple—just search for RSS in the WordPress plugin repository to find a good RSS editor plugin. However, you may find it time consuming to find a plugin that is capable of doing what you want, learning how to use it and then customizing it to fit your needs. It would be simpler to dig into the code yourself and start customizing the WordPress RSS feed the way you want. Fortunately, WordPress has good documentation explaining Feed Customization. You can find it here.

By default, if you add /feed/ or /rss/ to the end of your website URL, you can see the feed entry in XML format. You can use a more specific URL to filter the content on the feed. For example, if you add the “post_type” parameter to the end of your RSS feed address, you will limit the posts to your custom post type. Below you can see some examples of how WordPress targets RSS feeds:     //exclude category with ID 123 from the RSS feed //show the RSS feed of cat1 and cat2 posts         //show the RSS feed of posts having tag1 and tag2,cat2/feed  //show the RSS feed of cat1 or cat2 posts         //show the RSS feed of posts that have written by authorname     //show the RSS feed of searchterm   //show the RSS feed of post type "event"

You can also use a combination of the parameters above to provide a specific feed output. However, in the following example I’m going to show you a way to build a specific feed to fit your needs.

By default, the RSS feed only shows the posts categorized under the “post” type. If you want to include other posts from different post types on the feed, you need to add this to your child theme’s functions.php file. The example below will add the “event” post type to the default RSS feed output.

function myfeed_request( $qv ) {
      if ( isset( $qv['feed'] ) && !isset( $qv['post_type'] ) ) {
            $qv['post_type'] = array( 'post', 'event' );
     return $qv;
add_filter( 'request', 'myfeed_request' );

One important part of coding for RSS is that you need to hard refresh the browser after each update–otherwise you won’t be able to see your change. I fell into this trap for an hour or more and, after making sure the code was working fine, tried incognito mode and realized I couldn’t see my changes because of the browser caching. Hit CTRL+F5 or CMD+SHIFT+R to hard refresh your feed’s page and see the changes. 

As an example, I created an “event” post type using Jet Engine (a bundled plugin with the Jupiter X theme) and added an “event-date” meta field into it. The event-date receives the data in text, but the field will display a date-time picker like the one below. 

customizing WordPress RSS feed
Adding an event with a proper event date

After publishing this post, I can’t see it among my default RSS feeds. However, if I add the above code to my child theme’s functions.php file, the RSS feed will display this post as well.

customizing WordPress RSS feed
Custom post type “event” showing up in the default RSS feed.

In the above feed, I can see that the pubDate field is set to the date that I published the post, and not the event-date time that I chose in the meta fields:

<pubDate>Thu, 11 Nov 2021 18:04:34 +0000</pubDate>

If I want to add a new field to each item and not touch the <pubDate> field, I would use this code:

function add_custom_fields_to_rss() {
    if(get_post_type() == 'event' && $my_meta_value = get_post_meta(get_the_ID(), 'event-date', true)) {
        <event-date><?php echo $my_meta_value ?></event-date>

add_action('rss2_item', 'add_custom_fields_to_rss');

This will add  <event-date>DATETIME</event-date> to each item, if its post type is “event”.

customizing WordPress RSS feed
Add a new field to each item in the RSS feed

But if I want to modify the <pubDate> field directly, I can use this code:

add_filter( 'get_post_time', 'return_event_date_rss_2_feed_func', 10, 3 ); 

function return_event_date_rss_2_feed_func( $time, $d, $gmt )
    if( did_action( 'rss2_head' ) )
    	 if(get_post_type() == 'event' && $my_meta_value = get_post_meta(get_the_ID(), 'event-date', true)) {
    	 	 $time = $my_meta_value;
    return $time;

The result would look like this:

Modifying the <pubDate> value in the RSS feed for custom post type “event”

If you want to do the same for the ATOM feed, you need to add this as well:

add_filter( 'get_post_time',          'return_event_date_atom_feed_func', 10, 3 ); 
add_filter( 'get_post_modified_time', 'return_event_date_atom_feed_func', 10, 3 ); 

function return_event_date_atom_feed_func( $time, $d, $gmt )
    if( did_action( 'atom_head' ) )
         if(get_post_type() == 'event' && $my_meta_value = get_post_meta(get_the_ID(), 'event-date', true)) {
    	 	 $time = $my_meta_value;
    return $time;

You can modify the post content, post title or post excerpts with regular WordPress actions. You just need to check if you are modifying them through the RSS or not or use the filters that are specifically designed for RSS feeds.

Adding the featured image to RSS feed items is possible with this code:

function add_image_to_rss($content) {
	global $post;
	if(has_post_thumbnail($post->ID)) {
		$content = '<p>' . get_the_post_thumbnail($post->ID) .
		'</p>' . get_the_content();
	return $content;
add_filter('the_excerpt_rss', 'add_image_to_rss');
add_filter('the_content_feed', 'add_image_to_rss');
Inserting the featured image to the RSS feed

I highly recommend that you follow this article to get to know which actions you can use to modify your website’s RSS feed. 

So far, we understand that there are actions and filters we can use to customize the feed output. However, sometimes we need to do more than this. I personally like the idea of having an exclusive feed populated from my own feed template. The good thing about this is that WordPress allows you to have custom feeds even with a custom template. Let’s see an example of this approach. I will add a new feed to my website and will use my own template to render the RSS content. This feed will have a separate URL and would be useful when I want to use it as an app or widget that is exclusively developed and requires specific data. First I will use the default RSS feed template copied from wp-includes/feed-rss2.php, which is the default RSS template of WordPress, and then modify the template as I wish. Then I’ll copy every single line of it into the function customRSSFunc().

add_action('init', 'customRSS');
function customRSS(){
    add_feed('custom-event', 'customRSSFunc');

function customRSSFunc(){

 * RSS2 Feed Template for displaying RSS2 Posts feed.
 * @package WordPress

header( 'Content-Type: ' . feed_content_type( 'rss2' ) . '; charset=' . get_option( 'blog_charset' ), true );
$more = 1;

echo '<?xml version="1.0" encoding="' . get_option( 'blog_charset' ) . '"?' . '>';

 * Fires between the xml and rss tags in a feed.
 * @since 4.0.0
 * @param string $context Type of feed. Possible values include 'rss2', 'rss2-comments',
 *                        'rdf', 'atom', and 'atom-comments'.
do_action( 'rss_tag_pre', 'rss2' );
<rss version="2.0"
	 * Fires at the end of the RSS root to add namespaces.
	 * @since 2.0.0
	do_action( 'rss2_ns' );

	<title><?php wp_title_rss(); ?></title>
	<atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" />
	<link><?php bloginfo_rss( 'url' ); ?></link>
	<description><?php bloginfo_rss( 'description' ); ?></description>
	<lastBuildDate><?php echo get_feed_build_date( 'r' ); ?></lastBuildDate>
	<language><?php bloginfo_rss( 'language' ); ?></language>
		$duration = 'hourly';

		 * Filters how often to update the RSS feed.
		 * @since 2.1.0
		 * @param string $duration The update period. Accepts 'hourly', 'daily', 'weekly', 'monthly',
		 *                         'yearly'. Default 'hourly'.
		echo apply_filters( 'rss_update_period', $duration );
		$frequency = '1';

		 * Filters the RSS update frequency.
		 * @since 2.1.0
		 * @param string $frequency An integer passed as a string representing the frequency
		 *                          of RSS updates within the update period. Default '1'.
		echo apply_filters( 'rss_update_frequency', $frequency );
	 * Fires at the end of the RSS2 Feed Header.
	 * @since 2.0.0
	do_action( 'rss2_head' );

	while ( have_posts() ) :
		<title><?php the_title_rss(); ?></title>
		<link><?php the_permalink_rss(); ?></link>
		<?php if ( get_comments_number() || comments_open() ) : ?>
			<comments><?php comments_link_feed(); ?></comments>
		<?php endif; ?>

		<dc:creator><![CDATA[<?php the_author(); ?>]]></dc:creator>
		<pubDate><?php echo  get_post_meta(get_the_ID(), 'test_meta_field', true); // mysql2date( 'D, d M Y H:i:s +0000', get_post_time( 'Y-m-d H:i:s', true ), false ); ?></pubDate>
		<?php the_category_rss( 'rss2' ); ?>
		<guid isPermaLink="false"><?php the_guid(); ?></guid>

		<?php if ( get_option( 'rss_use_excerpt' ) ) : ?>
			<description><![CDATA[<?php the_excerpt_rss(); ?>]]></description>
		<?php else : ?>
			<description><![CDATA[<?php the_excerpt_rss(); ?>]]></description>
			<?php $content = get_the_content_feed( 'rss2' ); ?>
			<?php if ( strlen( $content ) > 0 ) : ?>
				<content:encoded><![CDATA[<?php echo $content; ?>]]></content:encoded>
			<?php else : ?>
				<content:encoded><![CDATA[<?php the_excerpt_rss(); ?>]]></content:encoded>
			<?php endif; ?>
		<?php endif; ?>

		<?php if ( get_comments_number() || comments_open() ) : ?>
			<wfw:commentRss><?php echo esc_url( get_post_comments_feed_link( null, 'rss2' ) ); ?></wfw:commentRss>
			<slash:comments><?php echo get_comments_number(); ?></slash:comments>
		<?php endif; ?>

		<?php rss_enclosure(); ?>

		 * Fires at the end of each RSS2 feed item.
		 * @since 2.0.0
		do_action( 'rss2_item' );
	<?php endwhile; ?>


This code requires you to save your permalinks in Settings -> Permalinks once, otherwise you will see a 404 error if you open the feed URL. 

Custom field, outputs the feed template.

The good thing about this approach is that you won’t have any limitations on modifying the RSS output. That’s why I like it the most. Now I can modify the template in customRSSFunc() or move it to a template file on my child theme and call it via template_parts() function to organize the code.

That’s it, guys–customizing the WordPress RSS feed using code is not that complicated! Let me know your thoughts about it and ask your questions below if you have any. 

How to Migrate a WordPress Site from One Hosting Server to Another

Website migration is the process of changing a website configuration or technology that can affect its online visibility and search engine optimization. A site migration includes changes such as changing the domain name or switching the hosting provider and server location, changing the structure of the site, site redesign, moving from HTTP to HTTPS protocol and moving the site to a new platform (CMS or Framework). In this article we will focus on changing the hosting server as the main process to migrate a WordPress site.

The reason for the migration is obvious when it comes to uploading a site on a production server after its development in the local environment, since the site needs to be made publicly available. If you are considering transferring an already working site from one server to another one, then there may be several most common reasons for that:

  • Balanced pricing plan
  • More hosting resources and useful features
  • Good server security
  • Great customer support

So if you are ready to publish your site or decide to switch to a new hosting provider, you will be faced with the question of how to migrate it. Here we will consider the technical aspects of two  methods for migrating a WordPress site to a new server: a plugin-based method using the most popular migration plugins and a manual method. 

The main risks involved in moving a site are data loss and downtime, which can make your site inaccessible for users and search engines, which in turn can lead to search engine rankings loss. Nevertheless, if everything is done in the right way, downtime will be minimized or won’t happen at all. 

Choosing and setting up the new hosting environment

If you are looking for information on how to migrate the website, you clearly have reasons why you are leaving your current hosting provider and you don’t want to suffer any problems on a new host. There are different kinds of hostings available to choose from and it’s important to understand how they work. Here is a list of hosting types: 

  • Shared hosting –  Usually the most common type of hosting, when one server houses many websites and shares resources between them.
  • Virtual Private Server (VPS) –  The virtual partitions of a dedicated physical server are used in this hosting type and an actual area of the server is dedicated to your site.
  • Dedicated server – A physical server supports only your website and you have  full access to the server’s resources.
  • Managed and WordPress optimized hosting – A hosting service where all WordPress technical aspects are managed by the hosting provider. This type of hosting includes technologies and tools that help your site run smoothly.

Before starting to migrate your site, you need to add your site (domain name) to the new hosting panel so that the necessary records will be created for your domain on a new server.

An important thing to remember: Don’t cancel your current hosting plan before the migration and further testing are completed, as you could lose your entire site’s data.

Backing up the site before you get started

A good practice before making any crucial changes to the site is making a full backup (site files and database). It can be done manually or with the help of any backup WordPress plugin. Since creating a backup is one of the steps of site transfer, we will cover it later in this article.

The plugins-based method to migrate a WordPress site

Migrating a WordPress site using any cloning plugin is a popular solution that helps to ease the process: Just install the plugin and make a few clicks. There are dozens of WordPress plugins for migration in the repository. However, in this article we will consider the two most popular ones: All-in-One WP Migration and Duplicator.

The All-in-One WP Migration plugin

The All-in-One WP Migration plugin specializes in website migration and provides all the necessary tools for that. It’s easy to use and has drag-and-drop import functionality, which simplifies the migration process.

At first you need to install and activate the cloning plugin on your old and new hosting environment. To do that, log in to your site’s WP Dashboard, navigate to the Plugins > Add New section, type the plugin name in the Search field and then click the Install Now button for the necessary plugin.

migrate a WordPress site

When installation is complete, just click the Activate button to turn on the plugin.

The steps below will show you how to move your WordPress site.

1. In the WP Dashboard of the site you want to move, go to the All-in-One WP Migration -> Export section.

2. Select the File option from the Export to dropdown menu.

3. Wait for the plugin to finish exporting the site data and then download the generated file in the .wpress format.

migrate a WordPress site

4. Log in to your new site’s WP Dashboard and navigate to the All-in-One WP Migration -> Import section.

5. Click the Import from buttonand select the File option.After that, locate the .wpress file you downloaded in step 3.

6. Click the Finish button once the import process is completed. In case the backup file can’t be uploaded via the web interface due to the max_upload_filesize limitation, you can upload it via File Manager in your hosting panel or via FTP. Upload the generated .wpress file into the wp-content/ai1wm-backups folder of your new site and then it should be displayed in WP Dashboard > All-In-One WP Migration > Backups. Click the Restore button and proceed with the restoration process. When migration is done you need to resave the permalinks structure in WP Dashboard > Settings > Permalinks, so it will regenerate the .htaccess file.

Important note, All-in-One Migration is a freemium plugin and it has free and premium features, but one of the main limitations you need to pay attention to is the size of the site’s backup file. If it’s bigger than 512M, you need to have a premium version of the plugin to proceed with the migration process.

The Duplicator plugin

Duplicator is another migration plugin that is also on the list of the best WordPress migration plugins. With the help of this plugin you can simply clone your site to a new server without downtime. When migrating, Duplicator creates a package with all the pre-configured files, so you don’t even need to install WordPress on your new host, as Duplicator does it itself.

The plugin installation is the same as the one  described in the previous section. Once it is installed and activated, you will see the Duplicator menu in the WP Dashboard panel.The following steps will show the process of migrating the WordPress site using Duplicator.

  1. Opent the Duplicator > Packages section and click the Create New button in the top right corner. Give a name to your package and click Next
migrate a WordPress site

At this stage Duplicator will scan your site and let you know if there are any potential issues. If there are problems highlighted, resolve them and scan again before proceeding.

migrate a WordPress site

2. When the backup file is ready, download it by clicking the One-Click Download link. It will download both the backup file and the installer.php file to your computer.

3. In this step you need to create a database on your new host. This can be done in the hosting panel; for example, if it’s the cPanel, you need to log in to it and find the Databases section. In that section, select MySQL Databases and click Create a New Database. Enter a name for your database and click Create Database. Then under Add a New User, enter a username and password and click Create a User. After that, scroll down to Add a User to a Database and select the user and database you just created and click Add. On the Manage User Privileges section tick the ALL PRIVILEGES checkbox and click Make Changes.

Important: You need to remember the database name, its username and the password for later actions.

You can check more about managing databases in the cPanel documentation.

4. Upload the files you got in step 2 into the site’s root directory on your new hosting server (usually it is the public_html folder). 

5. If you are migrating the site while keeping the same domain name, then you will need to modify your hosts file on a local machine. It allows you to override which server is hit when you browse a site and real domain switch (DNS change) will be done only after the migration and testing processes are completed. It’s important to prevent any downtime. To do that, you need to determine the IP address of your new server. You can find it in the new hosting panel or just ask the new hosting provider support. Now find the hosts file on your local machine (for Windows users its location is c:\windows\system32\drivers\etc\hosts, for Unix-based operating systems it is /etc/hosts) and in the bottom line of the file add the entry in the following view:

 the_new_ip_address your_domain_name

For example, if the new server’s IP is with the domain name mydomain.tld, the entry will be: mydomain.tld

6. Navigate to the installer.php file in the browser by entering the address http://yourdomainname.tld/installer.php to start the installation process. In the duplicator installation wizard, enter the database credentials you created in step 3 (leave the Host field as “localhost”) and click the Test Connection button. If everything is fine then click Run Deployment.

7. When the migration process is completed, test the site and then you may switch the name servers for your domain to the new host and remove the entry made in the hosts file in step 5. Note that name server changes may take effect after up to 24 hours.

The manual method of migrating a WordPress site

Migrating a WordPress site manually requires some technical skills, as you need to move the site files and database, and then configure the wp-config.php file. Using this method you need to know how to access files via the File Manager in your hosting control panel or via FTP (File Transfer Protocol). Also, knowledge of managing the database is required, in most cases using the phpMyAdmin environment.

Backing up your current WordPress site files and MySQL database

Files can be downloaded from the server via FTP using the FileZilla FTP Client. After connecting to the old server, navigate to the site’s root directory (public_html in most cases), select all WordPress files, then open the context menu by right click and select Download.

migrate a WordPress site

When the download is complete, open the phpMyAdmin tool in the hosting control panel to access the databases, select the database of your site and open the Export tab.

migrate a WordPress site

In the Export Method section select the Quick method, then choose the SQL option as the format and click the Go button.

The database dump will be downloaded to your computer.

Uploading the files and exporting the database to a new server

Now you can upload the site files to your new server. Connect to it via FTP with the FileZilla FTP Client and navigate to the public_html folder. From the left side of the client (Local site) locate the files you downloaded in step 1, select them all and then click Upload from the context menu.

migrate a WordPress site

While the files are uploading you can enter your new hosting panel and create a new database and note the database name, database username and database password. Then open the phpMyAdmin tool, select the created database and navigate to the Import section. In the Import screen, click Choose File and upload the database dump file you downloaded earlier and click Go.

Once the upload is complete you need to edit the wp-config.php file. In FileZilla, locate wp-config.php and open it to edit.

Change the following values to match your new database credentials:

DB_NAME – database name
DB_USER – database username
DB_PASSWORD – database password
DB_HOST – database hostname (Usually it should be localhost, otherwise you can specify it from your new hosting provider).

And lastly, you can do the trick with the hosts file, which we described earlier, to be able to test the migrated site on a new server. If everything is working fine then you can switch nameservers for your domain to the new hosting.


In this article we described one type of migration of a WordPress site—moving to a new hosting provider (a new server). The benefits of this can vary, such as better customer support, more hosting resources and useful features as well as better server security. We showed two different approaches to achieve this: plugin based migration and manual migration methods. These methods can be applicable in different situations, so it’s important to know the steps of the process to prevent your site’s data loss and downtime.

How to Customize WooCommerce Subscription Email Templates

WooCommerce subscription email templates featured

This is a guest post contributed to Artbees Themes blog by Thuy Nguyen from Ninja Team.

By offering subscription products such as news, summaries, courses, or even food, you can generate recurring stable revenue with WooCommerce subscription email templates.

Subscription-based products have a special business model that requires a strong digital presence. Brand print via email communications is a must.

Therefore, visual continuity is essential at all subscriber touchpoints, including your website, social media channels, and transactional emails. In today’s article, we’ll be showing you how to do that by customizing WooCommerce subscription email templates without coding using YayMail.

Install required plugins

In this tutorial, I’m using these plugins:

  • WooCommerce Subscriptions: to create subscriptions via WooCommerce and sell subscription-based products or services
  • WooCommerce Stripe Gateway: to handle recurring payments with Stripe 
  • YayMail: the free email template builder that support 50+ third-party extensions in its addons
  • YayMail Addon for WooCommerce Subscriptions: integration of email customizer for subscription emails
  • YayMail Addon for WooCommerce Stripe Gateway: integration of email customizer for Stripe’s payment reminder email templates

If you haven’t decided on which Woo subscription plugin to use, please check out our blog post on how to Create a Subscription Store with WooCommerce. In  this article, you will learn the pros and cons of each plugin in order to make an informed purchase. No matter which one you choose, the customization workflow will be the same as presented in this walk-through.

Let’s get started!

Design the general template layout

By default, the WooCommerce plugin alone comes with 11 transactional email templates. The WooCommerce Subscriptions extension comes with another 10 email templates and WooCommerce Stripe Gateway adds even more templates for payment status reminders. 
That’s quite a lot, right? But don’t fret, all of these subscription email templates are located in one place under WooCommerce > Settings > Emails.

Alternatively, you can also find the email templates by navigating to WooCommerce > Email Customizer.

In the email builder interface, please go to Settings > Enable/Disable Templates to find all the available email templates. There, you can choose to activate all the templates you want to put in use.

For each enabled template, you will see a green light indicating that it is now being used in the automation workflow of WooCommerce.

Also in the same Settings tab, you’ll be able to design the general layout of email templates. These options include universal display components like:

  • Language direction: it is left to right by default.
  • Container width: the width of the whole email body. It is 900px by default but 700px in the sample image.
  • Product image: automatically insert any product image with a custom position and image size.
  • Custom CSS: add your own creative adjustments.
  • Export and import email templates: keep a full template backup or use your customized email templates on different sites.

In the sample image I’ve changed the email background color to light mint and the text link color to dodger blue. Feel free to play around with colors before we move on to the next steps.

Customizing welcome email template for new subscribers

After finishing the general options, you can now move along to  a specific subscription email template such as New customer welcome email template for onboarding subscribers.

In the WooCommerce subscription flow, the first email your subscriber receives after signing up is called Processing order. Choose it from the dropdown list and then we can start to transform it into a more appealing welcome email template.

Logo and email header

Similar to Gutenberg blocks, you can upload and insert your logo very quickly. For this logo block, I set its background color with the same light mint color as the email background.

Alternatively, you can use a full width banner or an animated GIF in your email to emphasize your brand and its personality.

Then, with the email heading block, I pick a darker mint color for its background. After that, I just add some custom text and tweak it:

  • Change text color: use the built-in color picker or paste your own HEX color
  • Change font family: choose one of the email-safe fonts listed under “Font Family” option
  • Align and format the text further if necessary

After I am satisfied with my email header, I can continue with the main email content using text blocks such as:

  • Welcome greetings
  • Announcement of the subscription registration, and a bit more of what you have to offer
  • WooCommerce subscription detail table

Multiple column email section

Now it’s time to add some fancy media sections to the onboarding subscription email template. Here you can unleash your designer vision with an advanced multiple column block.

Here are some ideas to help you out with what to put in new subscriber email templates:

  • Setup instructions
  • Upcoming events and webinars
  • Merchandise and badges
  • Other useful links and resources

It’s easy to implement this media section by following these steps:

  • Add a three column block: set portion width, padding, background color or add an image
  • Drag and drop content blocks into each column
  • Insert buttons into columns: edit button color and text font/text color
WooCommerce subscription email templates - multiple column email

Feel free to add more images or videos to build excitement for your products with new subscribers and include gentle CTAs for further actions.

Email footer and signature

As for the email footer, this is where you can include post-purchase details such as customer service number, return or refund policy, company signature, QR code, etc.

Here I want to minimize those details so I only include social media profiles and the website tagline/company slogan.

WooCommerce subscription email templates - customize email heading

Within YayMail’s email builder, you can find a dedicated Social Icon block for showcasing your online presence. This enhancement provides customizable options including:

  • Social icon row paddings
  • Icon width and spacing
  • Various pre-set styles 
  • Links to social media networks and home page
  • Optionally add or remove social media icons

After all of the customization work, our email template looks  like this:

Customizing payment reminder email templates

When it comes to processing renewal payments, there are many scenarios that cause failed authentication. When this happens, Stripe Payment Gateway automatically sends payment reminder emails to the subscribers.

The WooCommerce email template Failed Subscription Renewal SCA Authentication gives a heads up to your customers:

  • To inform that an attempt to automatically process a subscription renewal payment has failed, 
  • To explain that the transaction requires an SCA verification, 
  • To request the customer to authenticate the payment, and a retry rule has been applied to notify the customer again within a certain time period.

That said, please prepare a reminder copy that helps clarify the issue and what actions you want your  subscriber to take.

Here’s what my copy looks like: 

“The automatic payment to renew your subscription with [yaymail_site_name] has failed. To reactivate your subscription, please login and authorize the renewal from your account page: Authorize the payment »”

After that, you can go to the email builder and reuse the newly customized email template to develop a consistent brand experience.

To save valuable time, it’s wise to duplicate an email template so that you don’t have to design it over again. To do this, simply follow these steps:

  • Select the current email template, eg: Payment Authentication Failed
  • Click on the button “Copy template” from the upper toolbar
  • Choose a particular template from which you want to copy all designed blocks, eg: Processing order
  • Click Copy template to have the new draft right on your current email template
WooCommerce subscription email templates - copy full template

Then you’ll have a full template cloned from the Processing order’s template. Now go ahead and omit the blocks that you find unsuitable or unnecessary.

WooCommerce subscription email templates

For situational guides, you can even add an extra text box to the email body with additional information. 

It is as easy as pie! When the email templates look just as you wish, click Save to finish.

Subscription email best practices

So we have guided you through the very basic steps of customizing subscription welcome and reminder emails. 

While it is intuitive to design with this drag and drop email builder, here are the best practices to save you more time:

  • When you add external links to the email templates, they could appear as insecure links and the template won’t be able to be saved. You can troubleshoot this problem by trying to reset the template.
  • There are many shortcodes and variables to insert personalized information into the subscription email templates. You can find them in any textbox element or from the (i) Shortcode button.
  • At any point in time, you can save and preview the current template on desktop or mobile interface.
  • Before enabling the email templates, you can send a test email anytime to make sure it looks good on different email clients and devices.
  • You can try sending different email templates in real life to find out which layout brings the highest WooCommerce conversion rate.

Wrapping Up

WooCommerce subscription email templates are expected and contain important information. These emails have a high open-rate. While you don’t want to promote hard via these emails, you do have the chance to give incentives for sharing your products, or simply ask for a review.

With the help of YayMail – WooCommerce Email Customizer, you have a simple way to build a successful relationship with your subscribers.

Have any templates that you want to share? Don’t hesitate to let us know in the comment section below.

How to Find Your Referrals Using the New Dynamic Parameters in Jupiter X Forms

Dynamic Parameters in Jupiter X featured

Once I had a client who needed a landing page where visitors could submit a form asking for a medical appointment. The landing page was about to receive traffic via different marketing campaigns from different advertisers. The challenge was to detect which marketing campaign had the most conversions. In order to find it out, I needed to find a way to detect referrals by ad publishers. The next challenge was that the final product had to be delivered within 24 hours. Fortunately, Jupiter X is extremely helpful in a situation like this. In this article, I’m going to let you know how Dynamic Parameters in Jupiter X Forms can come in handy in these situations and allow you to detect your referrals quickly and easily. 

What is a dynamic parameter?

URL parameters (or Query Strings) are part of the URL that add extra information to it. The structure is similar to a valid URL but separated with a “?” symbol. Whatever comes after this character will be considered a parameter and may or may not have a key value pair.

In the above example, parameter1 is the query parameter and value1 is the value of that parameter. 

In fact, back in the day, web pages were simply HTML documents stored in different folders and they had  no way to communicate with each other except via hyperlinks. You could just use hyperlinks to navigate between HTML docs in different folders. Implementing Web Forms and additionals to HTML and HTTP protocol allowed simple data transfer between the pages using GET and POST methods. Imagine that you had this web form implemented on your HTML doc:

<form action="/page1/" method="get">
  <input type="text" name="parameter1" />
  <input type="text" name="parameter2" />
  <input type="submit" />

The result of such a form would be the following:

Now if a user inputs  value1 and value2 in the form fields and hits submit, it will redirect the user to /page1/ with the given URL:


In page1, it’s up to you if you want to collect the value parameters and do something with them. You can use a server to get the query strings and render them on your page or send an email to someone if the parameter is a certain value, or perform much more complex scenarios. The thing is, this is one fundamental method of passing variables between HTML documents and, although it’s simple, it can be used in much more complex cases. 

Sidenote: The GET method has a limitation of 2048 characters. This means that if your URL is bigger than 2048 characters, you will need to pass the variable using other methods such as POST. 

Now that we know the fundamentals, we can come up with a strategy for our task. I need to pass the traffic from different sources to my landing page and, once on the landing page, detect each source and dynamically add those sources to my form. This ensures that, whenever the user submits the form, the source parameter will also be submitted.

Different traffic sources for marketing campaign summer2021

Implementing the landing page: the quick way

Since I was not a designer, I was not worried about the design of the landing page. I could easily use one of Jupiter X’s landing page templates or select an elegant page template and easily add my form. Regardless, I had a design file ready from a designer and needed to implement it using my tool of choice, and I chose Jupiter X. I’m going to quickly use one of the contact page templates on this page (using the WunderWP plugin) to be able to explain the process. 

After setting up a WordPress website on my client web host, I installed Jupiter X, registered and created the first page using it. (+)

After that, I installed the WunderWP plugin and made sure it was connected to my website.

Make sure WunderWP is connected to the website

Now I need to create my landing page. From Pages -> Add New I choose to add a new page, then set the template to “Full Width” and edited with Elementor.

Creating the landing page with the appropriate page template.

When the Elementor editor loads, I can see the WunderWP icon. Simply clicking on it will open a popup where I can choose the proper contact template.

Opening up the WunderWP template modal.

After finding the proper template, I just click on the “Insert” button below it.

Click on the Insert (green) button below each template.

And here we go! I have my landing page ready.

Jupiter X Forms widget on the landing page.

Now I can configure my form to send the data to whichever email I want, or submit a copy to my MailChimp, Growmatik or any other conversion tracking system. 

Let’s get back to where we were before. I have my landing page now and still need to collect information from different viewers of my landing page, see which ones are coming from which marketing campaign and submit all the data together once the user submits the form. 

But let’s have a quick overview of the URLs that are open on my visitors’ browsers. This is an example of an actual marketing campaign link that one of my advertisers used to link to my landing page:

Let’s have a quick look at the parameters first. 

UTM parameters 

Based on this wikipedia page, Urchin Tracking Module (UTM) parameters are five variants of URL parameters used by marketers to track the effectiveness of online marketing campaigns across traffic sources and publishing media. 

As I mentioned earlier, you can edit parameters however you wish, but marketers have standardized a few specific parameters for continuity between different marketing campaigns. It’s up to you whether you choose to follow their example or not. It’s up to you. 

There are five standardized UTM parameters, which may be used in any order:

utm_sourceIdentifies which site sent the traffic. A required parameter.utm_source=publisher1
utm_mediumIdentifies what type of link was used, such as cost per click or email.utm_medium=cpc
utm_campaignIdentifies a specific product promotion or strategic campaign.utm_campaign=summer2021
utm_termIdentifies search terms.utm_term=running+shoes
utm_contentIdentifies what specifically was clicked to bring the user to the site, such as a banner ad or a text link. It is often used for A/B testing and content-targeted ads.utm_content=logolink or utm_content=textlink

I know that the links that redirect to my website have two of these parameters: utm_source and utm_campaign. So, I need to get the value from them and store it somewhere until the user submits the form. 

Now let’s see how we can attach these parameters to the form. 

Dynamic Parameters in Jupiter X Forms

Jupiter X Forms has a unique and interesting feature that allows you to add a hidden field to your form and populate it with a dynamic parameter. Pretty much exactly what we need, right? Then it’s as easy as adding the hidden form fields and configuring them to the value from the URL.

The first thing I’m going to add to the form is two hidden fields.

dynamic parameters in Jupiter X
Adding a hidden field to the Jupiter X Forms

After that, I need to name my field exactly like the UTM parameters that I’m going to use.

dynamic parameters in Jupiter X
Adding Request Parameter as the dynamic field value. 

After naming the field and setting the value to be a dynamic request parameter, I need to provide the name of the parameter in the box.

dynamic parameters in Jupiter X - add UTM
Adding UTM_SOURCE as the parameter name to the hidden field.

I will do the same process for the UTM_CAMPAIGN parameter. I also added a test text field and then populated it with the same request parameter to show how it will populate the field value dynamically. Here is the result:

dynamic parameters in Jupiter X - populating dynamic parameters
Populating the dynamic parameters inside the form fields.

I don’t need the TEST UTM_SOURCE and TEST UTM_CAMPAIGN fields, so I will remove them. The parameters are already attached inside the form as hidden fields.

dynamic parameters in Jupiter X - hidden field
Populated hidden field showing up in the browser inspector.

One thing to consider is that the name of the generated hidden fields are random here, so you may need to map them before sending them to MailChimp or Growmatik

After submitting the form, I can now see dynamic parameters that are added among the filled fields. 

If there are no dynamic parameters available, no issues will occur. The fields will have no value and won’t cause any trouble for your submission.

dynamic parameters in Jupiter X - form sample
Sample of the form submitted to the email containing the dynamic parameters.

And we are done. Finding your referrals using dynamic parameters in Jupiter X Forms requires no additional plugins or extra work. This example demonstrates how you can get the values from the URLs. There is also one other feature that I would like to mention and that is the POST parameter types. Sometimes you need to get the values using the POST method instead of the GET (url), which is also possible via Jupiter X Forms. 

That’s all, folks! Feel free to ask questions or share your ideas about this article and don’t forget to subscribe to the newsletter to get the latest updates from Artbees!

How to Create Popups in Elementor Websites

popups in elementor featured

A popup is a small window that appears from different sides or with different effects as a customer browses a website. It can have different shapes, forms, locations and functioning behavior, it can be used to show important information, make an agreement with the user, collect leads or gather other information from the end user.

Let’s be honest, you probably hate to see popups when you’re browsing a website. It’s usually unwanted and distracts from whatever process you were engaged in. However, as a site owner, you can’t afford to ignore making popups because they have the potential to greatly increase lead generation. In this article we will discuss the function of popups and present several methods on how to create popups in Elementor websites. 

Popups in Elementor Pro 

Elementor has a built-in feature for popups, but in order to utilize this feature you need to upgrade your account to the Pro version. 

If you are familiar with Elementor, then you probably know how to create and manage templates. Building popups in Elementor is very similar to working with templates; you create them, define rules and set where they will appear. Let’s shortly review how this works in Elementor Pro:First you need to create a new popup via Elementor > Popups > Add new popup. Once you add the name you will have the chance to choose from a pre-designed template or start from scratch.

No matter which way you use it, working with page elements is absolutely the same. Besides, this post is not about how to use the Elementor page builder. Rather, the most interesting part of the popup is in the template setting (marked by the gear icon at the bottom left). Here in the settings tab you can define width and height, animations for entry and exit, the horizontal and vertical position of the popup window and close button style and appearance.

On the style tab (on the right side), you can define the style of the elements used in the popup, close button style and some other style-related settings. 

If you finished setting up the popup window it’s time to define how and when to show your popup. To do this you need to define the Publish Settings of this popup.

The Conditions tab defines the location of the popup. You can choose different locations like pages, posts, only frontpage, only Shop page or anything else you can imagine. You can also combine rules together.

The Trigger tab defines exactly when you want a popup to appear. There are several triggers and they are enough to setup advanced processes including:

  1. On-Page Load
  2. On Scroll
  3. On Scroll to Element
  4. On Click
  5. After Inactivity
  6. On-Page Exit Intent

The Advanced Rules tab allows you to define the advanced conditions of your popup such as  where or to whom you want to display the popup. These include different user roles as well. There are many different rules available and they can also be combined with each other.

Once you set all your rules and click Save & Close, your popup will be ready and will show up for end users according to the rules you set.

Popups in Jupiter X

Popups in Jupiter X can be used even if you don’t have Elementor Pro! They are organized by famous JetPopup plugins, which is a premium plugin and included for free in Jupiter X.

In JetPopup, as in Elementor pro, you also have pre-built templates, but here you have a better selection of templates and they can be filtered by different categories.

The process is almost the same as in Elementor Pro: you start with a blank template or with a premade template. Designing the page with the Elementor widget is the same, you just need to add and configure the Elementor widget. The difference is in the settings of the popup. In this case you don’t have a Publish Settings tab, but instead you can configure all the settings from the same window.

Here in the settings tab you can define animation, popup events, amount of popups and many other settings. The most important part here is Display Condition, which defines rules of where exactly you want to show your popup. Here you can choose to include or exclude pages, posts, categories or many other post types. They can also be combined with each other.

The Style tab in the settings is responsible for the style of the popup. Here you can define width and height, position, background type and many other settings such as close button style and overlay of the popup, which can be defined as a color or image.

The good thing about the JetPopup plugin combination with Jupiter X is that when you install one of many demos of Jupiter X it comes with a pre-designed popup template optimized for that particular demo. Most of the demos are packed with nice looking popups, especially shop templates.

Popups by Growmatik

It’s likely you already know about Growmatik, our product that automates your entire marketing arsenal and drives more sales via personalized web pages, emails and popups, all from within one tool. However, if you have not tried it before I highly recommend checking it out. Popups in Growmatik can be displayed for specific events or to certain users from certain locations. In order to create such popups, first of all you need to make sure you first integrate your website with Growmatik. Once this process is done, you can start creating popups from the Workshop page:

popups in Elementor - growmatik popups

Now, click on the button on the upper right side to add the popup. Basically, you have 2 options, to start from scratch or use readymade popups. These pre-made popups were created to fit the most common marketing scenarios like subscription, discount offer, content giveaway, new collection and many others.

popups in Elementor - growmatik templates

Starting with pre-built templates is the easiest option, of course, and will save you plenty of time. You’ll just need to change some text, images and the appearance settings of the popup window as everything else is already created and configured.

If you decide to start from scratch, it will take more time but your template will be fully customized. It’s all about your creativity! I love prebuilt templates but they do not always fit my needs, which is the main reason why you might want to start from scratch.

The best thing about Gromatik popups is that you are not distracted with other elements in the editing window. The sleek design helps you focus on your work, such as the important elements and settings window of the popup. Take a look at this screenshot to get an idea what the Growmatik interface looks like.

popups in Elementor - growmatik popup

Everything you may want from the popup, you have in your window. Growmatik boasts a responsive view, real time preview, the setup of the popup layout, overlay style and many other related settings that can be configured from a single window. That’s how easy it is!

Once your popup window is finished it’s time to create some automation. In other words, this popup now needs smart rules of appearance since we don’t want to show it for every user who opens our site. In this case, Growmatik has automation rules. To access these, you don’t even have to leave the  popup builder. From the same window, on the top left you’ll see the Options button. Choose “Use in automation” and then, depending on your marketing goal, choose who you want to show your popup: guests, leads or customers. In the window that appears next you will have the option to show your popup window to filtered users by parameters such as location, device used, period of the time and many others.

We will not review all the details of the creation process but let’s check this screenshot, where we decided to show popups to users from Georgia and Italy who are using mobile devices. We want our popup to appear after they scroll our page by 25% and this campaign should run from 8 August to 13 September. On the right side we chose which popup to show for this campaign:

popups in Elementor - create a rule

As we can see, creating this process is very easy, even for beginners, but be aware that we covered only the basics of the process. Actually, Growmatik is a versatile tool and it can be used for advanced marketing scenarios.


Thank you for reading this article! I hope you now have more information on creating popups in Elementor and other key marketing programs. As you can see, making a great looking popup is not a big deal and it is super easy. Nowadays, you don’t need to design popups from the ground up, since many ready-made templates are available. You just need to change some settings and set up appearance rules. As a site owner, you always need to imagine yourself as a viewer of the site. Don’t create too many popups and don’t distract users, since only good looking and well-functioning popups can really increase leads

If you have any questions or tips to add, please feel free to comment below!

How to Build a WooCommerce Store with Elementor

WooCommerce store with Elementor featured

If you are going to create an Ecommerce website, you’ll be able to do it easily with the combined capability of Elementor, WooCommerce and the Jupiter X theme. These powerful programs allow you to design a fully-functional ecommerce website without any coding. In this post, you’ll find all the steps you need to take when creating your own WooCommerce store with Elementor.

The Tools You Need To Make A WooCommerce Store

There are two main tools you’ll need to create your online store beyond the WooCommerce plugin:

Jupiter X Theme – this is a premium WordPress theme that includes customization options, a bundled WooCommerce plugin and demo templates.

Elementor – this is a free page builder that will help you customize pages and add any content. It’s also bundled with the Jupiter X theme.

Next we’ll explain how to create and customize the product pages and make them look great.

Installing Jupiter X and WooCommerce Templates 

The first step you need to take in creating a WooCommerce site is installing the Jupiter X theme. The process is quite simple and is explained fully here. If you are new to WordPress and WooCommerce, or just want to save time, you can install a demo template to get an already built WooCommerce site and just replace demo products and other demo content with yours. In this post you’ll get a detailed instruction on how to import a demo template. 

Use Customizer to Edit the Settings

Jupiter X provides WooCommerce settings in the WordPress Customizer. You can edit some styles, enable/disable options and see the results right away on a real-time preview. 

So, after installing WooCommerce, you can access default WooCommerce pages, which can be styled in Appearance > Customize > WooCommerce.

Here are the sections you can customize:

  • Product Archive
  • Product List
  • Product Page
  • Product Catalog
  • Checkout & Cart
  • Store Notice
  • Product Images

WooCommerce settings like Store Notice, Product Catalog, Product Images are default settings and not related to Jupiter X. You can read about them in the WooCommerce documentation

Product Archive

In the “Product Archive” tab you can set margin and padding values that will be applied on WooCommerce archive/category pages. Also there is a “Styles” tab where you can edit the color, fonts for the title and description on the archive pages.

Product List 

The settings in “Product List” allow you to enable/disable different elements, set columns and rows for the products. Also you can style the elements like “Add to Cart” button, product title, Sale and Out of Stock badges, etc. Jupiter X documentation has an article related to Product List that describes the options in detail.

Product Page

This tab provides the settings for single product pages. There are 8 templates you can select for single products. You can view their examples on Jupiter X demo site (hover the Shop menu item and check the links Layout 1 – Layout 8).

WooCommerce store with Elementor - product page

There are also options to enable/disable different elements on the page like Categories, Tags, Short Description, Review tab, etc. In addition, you can disable Image Lightbox and Image Zoom. The “Styles” tab provides styling options for the elements, such as changing font family or font size for product name, setting border for an image, styling social icons and so on.

Checkout & Cart

The “Checkout & Cart” tab has an option to disable steps, which you have by default on the Cart and Checkout pages.

WooCommerce store with Elementor - customize cart

Additionally you can style these steps, headings, buttons, thumbnail and others in the “Style” tab.

Creating a Custom Shop Page With Elementor

WooCommerce creates a default Shop page that is not editable and other content can’t be added to it.In this case we have a solution: create a custom Shop page using Elementor editor where you’ll be able to add any content you need. Of course, you need to display products on your Shop page, and to do this you can add the JX Products widget to the Elementor editor.

WooCommerce store with Elementor - jx products

Its styles are taken from Customizer > WooCommerce > Product List. So, if you want to change the title color and font size or customize the button, you need to edit the Style settings in the Product List inside the Customizer.

By the way, any other content can be added to your custom Shop page in Elementor, including, for example, some custom text or a sidebar, search form and others.

If you wish to create custom templates for archive and single product pages, you have to install the JetWooBuilder plugin (it’s bundled with the Jupiter X theme). This plugin will help you build astonishing templates in combination with Jupiter X, Elementor, WooCommerce, and JetWooBuilder. 

JetWooBuilder allows you to override the default shop pages in WooCommerce from single pages to the archive and category pages. It also offers customization on checkout and cart pages. So, if you aim to build a completely custom shop page layout, you can make use of the JetWooBuilder plugin. Here is JetWooBuilder’s official website.

By the way, we already have a blog article about JetWooBuilder and what templates you can create for your store.

Although JetWooBuilder gives you the ability to override WooCommerce pages, another tool can be very handy: Jet Smart Filters. This plugin is also bundled with the theme. It allows you to use better filters on your archive pages to provide better usability for your end-users. 

JetSmartFilters plugin is made for the Elementor page builder and it’s very handy. You’ll give users a possibility to apply multiple filters. There are different filter types to add, including the checkboxes, range filters, search filters, etc. You can find detailed instructions on how to apply filters to WooCommerce products in this article.

Increase Conversion Rate

If you are looking for a way to monitor customer engagement, the best tool for this will be Growmatik. This powerful conversion tool will measure your marketing with conversion & growth reports. Growmatik is a robust marketing automation solution that automates your entire marketing and drives more sales through personalized web pages, emails and popups within one tool.

Learn more tips and tricks for improving conversion in this article entitled “What is conversion rate and how to boost it with personalization”.

Wrapping Up

Using a combination of WooCommerce, Jupiter X and Elementor allows you to build a custom ecommerce site without needing to write lines of code. All you need to do is:

  • Install and configure WooCommerce
  • Install Jupiter X and import a demo template if needed
  • Customize your product pages via Jupiter X Customizer settings
  • Create a custom Shop page with the Elementor page builder and use additionals tools like JetWooBuilder, JetSmartFilter

So give it a chance and build a WooCommerce store with Elementor. After that, you’re ready to sell your products!

How to Create a Subscription Store with WooCommerce

subscription store with WooCommerce featured

Subscriptions are an important part of sales for any ecommerce store. This is the list of your gold users who are ready for repeat purchases, since sales by recurring subscription is a very popular and easy to maintain channel of income that doesn’t incur big expenses compared to the usual marketing techniques and every step can be managed by the software.

Subscription means recurring sales of products or services by your customers. You may recognize the subscription model everywhere on the internet, ranging from simple grocery stores to retailers like SaaS. It can be used everywhere to drive more sales. Customers love stores offering subscription plans because it automates the purchasing of products that last a short period of time, such as subscribing to receive shaving cream once every two months.

There are many different types of subscriptions for ecommerce. For example, you may subscribe to physical products or services, you may open different levels of support service or access different areas of the website.

If you are not using WooCommerce Subscriptions in your store, it’s a must try feature. In this article, we will dive into setting up one the most popular subscription plugins and we will also review some other popular plugins. You will learn how to quickly set up a subscription store with WooCommerce plugins and sell subscription-based products and services with a recurring payment. Those plugins can be used for any products, virtual or physical, over a predefined time interval. As with all of the transactional and marketing emails, you’ll want to customize WooCommerce subscription emails to be consistent with your brand voice.

YITH WooCommerce Subscription

In this article, we will dedicate more attention to this free plugin since it’s a very popular and widely used subscription based website, setting up this plugin is easy and can be done in several minutes.

First of all, you need to install the plugin from the WordPress repository. You can directly search it from your WordPress dashboard > plugins > Add new, and search for “YITH WooCommerce Subscription.” Here is the direct link to the plugin, so install and activate it.

Once you activate the plugin you can immediately start using it. Open any product and you will see a new checkmark in the product details tab. By selecting it, new options will appear on the General tab:

As you can see there are several settings options. However all you need to do is enable the subscription plan for this product, select price for a selected period of the time. While there is no option to set a time period of years, you may use a combination of months or days instead.

In the same tab you also have the option to set the time when a subscription period ends and options for subscription limits. For example, you may limit users to allow only one active subscription.

Once you’re done with the product setup it’s ready for publishing. You will see a notice about subscriptions on the product page:

That’s it, we’ve made it, so now when visitors check this page they will see this is a subscription-based product.

How does payment work?

By default, you need to configure payment in WooCommerce > Settings. PayPal is the payment option configured by default here, so during the predefined period of time (set in the product page) the payment system will charge users the amount of funds predefined in the product page. If funds are not enough, subscription will automatically be canceled and the user will be notified about this.

Users can also use different payment methods and the system will use that method for recurring payments. Please note that the system stores user payment methods and data, so customers will be charged automatically based on their payment method and details.

Where are my subscribers?

You can see all your subscribers in YITH > Subscription > Subscriptions. Here you can view all your current and canceled subscriptions. You also have different types of filters to filter subscriptions by date, status, payment method and customer. You can also bulk delete subcategories manually.

That’s pretty much everything that you need to start subscription-based products sales. We will not cover every piece of the settings in this blog post, so for more information check out the official documentation
The premium version of the plugin offers some other features and full control over subscription management. If you feel you are missing some configuration settings in the free version it probably is already covered in the premium version. Check this link for more information about Pro.

WooCommerce Subscriptions

WooCommerce Subscriptions, is managed by WooCommerce and is an excellent tool for setting up all kinds of subscription plans. It comes with 25 payment gateways for automatic recurring payment and you can set daily, weekly, monthly or annual billing to renew user subscriptions.

Plugin has great support and natively works with WooCommerce plugin It’s a paid plugin and costs $199 per year.


subscription store with WooCommerce - subscriptio

Subscriptio is a premium plugin you can purchase on You can use it to sell subscriptions by default and it also has recurring revenue scheme options. This plugin is a great way to sell e-learning courses, magazine memberships, premium levels of profiles and more.

A regular license for the plugin costs $69 and if you want to extend the license it will cost $299.

SUMO Subscriptions by Fantastic Plugins

subscription store with WooCommerce - sumo

SUMO Subscriptions is a universal tool you can use to create a subscription store with WooCommerce. It can be used for any kind of product and it also can add a subscription feature to your existing products as well. It has 4 built-in payment options, including PayPal and Stripe.

A SUMO subscription varies between $49 to $490 depending on which option you choose.

Subscriptions for WooCommerce by WebToffee

subscription store with WooCommerce - webtoffee

WebToffee for WooCommerce Subscriptions is a simple yet powerful plugin that allows you to set up basic subscription plans to any kind of products in your store. This plugin also supports major payment gateways such as PayPal and Stripe. 

The plugin can be tested as a free trial before making a final decision. For a single site it costs $89 and a business license for five sites costs $129.


Now that you have a little bit more of an understanding of how subscription for ecommerce works I believe you will have all the necessary information to choose the right plugin. Using the plugins we mentioned here you can quickly sell subscriptions-based products and services and create a subscription store with WooCommerce successfully. If you need more clarification or have any questions please leave a comment below.

How to Improve Your WooCommerce Conversion Rate

WooCommerce conversion rate featured

About 4.4 million e-commerce websites are using WooCommerce in 2021. In order to survive and prosper, you should know where you stand in this competitive and crowded community and find a way to attract the attention of users as effectively as possible. In addition, you should try your best to make it easy for the attracted users to find what they are looking for as soon as possible. 

For average users, some say you have about 15 seconds and others say 50 milliseconds to capture their attention. According to some studies, shopping cart abandonment emails sent within an hour increase conversions by 6.33%. One thing that is obvious from these numbers and this vicious market is that you should be precise and speedy to attract users so they may consider you as an option and also keep track of your marketing actions to increase and optimize the chance of converting them into customers. But how can you achieve that? Is there any tool to help you do all of this?

Some believe your website personalization strategy has the largest effect on improving your WooCommerce conversion rate – prior to website design. In this article we will show how to tap into a user’s interests, attributes and behavior and track conversion in your WooCommerce store.

First, let’s figure out what conversion rate is.

What is Conversion Rate?

Simply put, your conversion rate is the percentage of visitors that take the action you want them to. This could mean subscribing to a newsletter or placing an order on an e-commerce website. Depending upon the goals you have set at different stages of your site, once visitors reach those goals, you can consider them converted users.

Dividing the number of converted users for the specific event by the total users involved in that event will give you the conversion rate.

Why is it important to measure and track your WooCommerce conversion rate?

1. Get a better understanding of your users and what really works

Tracking conversions means mapping the path that visitors take on your website before they are converted. You can learn plenty of useful things from this information: what ads are performing the best, which of your webpages gets the most traffic, what the most popular item in your ecommerce store is or which social media posts have brought the most traffic to your site. Armed with this data, you can develop more effective marketing strategies and tweak your campaigns to attract higher traffic, convert more visitors and help you reach your goals faster!

2. Boost ROI while lowering costs

Every business aims to get a high return on investment, but how can you achieve it? Let’s take a look at an example: if you track the conversions made from an ad you are running, you can determine how many customers the ad has converted versus how much you invested in the ad. This kind of analysis will help you decide whether to tweak or pause the ad to lower costs or improve its performance.

3. Segmenting your audience

In order to categorize your audience into the most effective segments, it’s vital to learn what specific content or web pages appeal most to each part of your audience. With that information at hand, you can target those groups of customers with relevant content specifically tailored to them, as with retargeting campaigns. You could also use RFM segmentation to segment active and inactive customers to target with personalized campaigns.

Analyzing your WooCommerce conversion rate

Let’s run a little thought experiment. What if, during the first week after your website launches you receive a total of 100 visitors. Out of those 100 visitors, 20 register on your website. That would make your conversion rate a whopping 20%, right? Not so fast. A meager 100 visitors is not a big enough number for statistical analysis, nor is a week a long enough time to show what routine traffic will be like. Lean Analytics places the average conversion rate for an ecommerce site at just 1% to 3%, while more popular sites boast rates between 7% and 15%. Amazon, for example, had a 2020 conversion rate of 9.55% based on total clicks (adbadger).

Improve conversion rate with personalization

A 2016 study by Emerald involved analyzing data from 85 of the top 100 US online retailers. According to this study of conversion rates, there is a statistically significant relationship between conversion rate and user experience. But user experience does not just depend on your site design and user interface. Rather, providing a good user experience is about delivering the right content to the right people. In short, a good user experience is all about personalization, but not limited personalization like addressing a user with their first name in emails and on the website. Instead of shallow, one-size-fits-all personalization, you need a strategy for personalization at scale that is deep, harmonized and cross-channel to get the best conversion rate. The following are some key personalization tips to help boost conversion.

Which tool can help improve WooCommerce conversion rate?

To improve conversion, you’ve got to be able to track it. The most well-known tool for the job is Google Analytics. While there are a number of analytics plugins on the market that track conversions, most of them get their data from Google Analytics anyway.

While Google Analytics sets the industry standard, it does come with a few disadvantages:

  • Google Analytics tracks data via cookies, which means it cannot access the WordPress or WooCommerce user base and the valuable information contained there.
  • Google Analytics conversion reports do not give long term historical data but are based just on individual sessions. There’s no chance to look at the behavioral trends behind those sessions. 
  • Google Analytics does not distinguish between leads and customers. This means that it treats all sessions as the same without differentiating the type of user. 

What alternative to Google Analytics can address these shortcomings? Is there a tool out there capable of generating accurate conversion reports to help you improve your rates? You’re in luck!

Growmatik is an all-in-one tool that has access to WooCommerce data and keeps track of leads and customers throughout their journey in your online store. It provides reliable reports on conversion and revenue on each marketing activity on every marketing channel as well as helping you to drive more engagement and sales by automating and personalizing those activities.


Growmatik is a marketing automation tool that specializes in automated personalization. It works across channels, helping you personalize your customer journey through custom popups, emails and landing pages. It also creates reports based on data collected from visitor sessions and cookies, plus WordPress and WooCommerce data to help you analyze the behavior of different user types. Thanks to all of the sources of information that Growmatik utilizes, it composes detailed reports on user behavior and in-site activity to help you better tailor your marketing materials.

You can track conversion in 3 different sections of the Growmatik interface, each with their own approach to analytics: the General analytics page, customer journey and automation performance report.

Measure and compare conversions via Analytics page

Growmatik boasts a built-in tracking, analytics and metrics system for compiling reports with comprehensive analytics about your audience and the kind of traffic reaching your site. You can use this powerful tool to track all kinds of metrics about engagement, sales and customer behavior. Growmatik even collects data based on engagement and performance for your email campaigns. Since these reports are time specific, you can track the changes in a given metric over a specific time period.

Track conversions with Customer journey

To examine the different funnels on your site, especially top performing funnels from referral sources, subscription channels to landing pages, use Growmatik’s customer journey feature to help plan your next steps. This feature can help you determine which channel brings the most traffic, what products customers buy the most, who your loyal customers are, how visitors navigate through your site and what you should invest in for marketing.

This information ultimately helps you craft better customer segments, which in turn means more effective and cost-efficient marketing campaigns. To get a better idea of how it all works, let’s look at a clothes ecommerce website and examine 5 key dimensions of its customer journey over a period of 3 months.

In the image above, you can see the top performing channels in the 5 key dimensions. Visitors to the clothing website come primarily from the United Kingdom, the United States, Italy, India and Germany. Amazon is the primary referral source for traffic from these countries, most visitors landed on the homepage before performing any action, popups were the primary channel for newsletter subscription and most customers bought jeans as the last step of their journey.

In Growmatik, you can select a specific funnel to track the customer journey specifically through that funnel. Let’s take a look at the location.

Check out the performance of each campaign 

The automation reports provided by Growmatik will help you track the performance of each automation you create, allowing you to measure and manage conversion and ultimately plan your next step. You can automate everything from email campaigns to personalized site content and popups, all while tracking how each automation type performs by monitoring specific metrics.

Improve conversion rate by Automating personalization

In Growmatik there are two simple steps to implementing automated personalization for WooCommerce:

  1. Create segments- This means grouping users you’d like to personalize your content for. These will be the segments of WooCommerce customers or leads that matter to you based on the attributes and behavior you’re targeting.
  2. Create personalized automation for each segment- To improve WooCommerce conversion rate through personalized automation, we can create automations by using the “IF this THEN that” structure. Once the condition(s) is triggered, the action(s) will be executed.

Some practical examples using personalization to improve conversion rate

Let’s check out some real world personalization examples that you can use for your e-commerce store. All of these can be done using Growmatik.

Please your loyal newsletter subscribers with exclusive offers 

To motivate your active newsletter subscribers and keep them engaged, you can send an email with special discounts to those who clicked your emails more than specific numbers; for example, customers who have clicked on more than half of your emails. Go to Growmatik’s People page and select all leads or all customers and input the following filters:

Subscription > Number of clicked emails > more than X

We can design our email and use some dynamic keywords such as the user’s first name in the content of our email and send them a custom offer. In Growmatik, do the following: 

  1. Go to Workshop > Emails
  2. Click Create Email 
  3. Select a template to get started
  4. Edit the template by selecting text and clicking on . Then, click on Dynamic Keywords to insert any keyword.
  5. Save the email template and send it to the targeted segment.
WooCommerce conversion rate - discounts

Encourage users to purchase based on their page visit

Chances are, customers will want to see content related to the products and information that they frequently browse on your site. Give them what they need by sending them emails or popups with discounts related to their in-site activity.

For example, create a segment for users who visited the watch page. Go to the people page and select all leads and input the following filter.Site activity > Visited pages (URL) > Contains watch collection

For creating a popup, go to Workshop > Popups and click on Create Popup.

WooCommerce conversion rate - popup

Show abandoned items on the homepage

According to Baymard, more than 69% of online shoppers abandon their carts without checking out. You should definitely carry out a strategy to encourage them to finish their shopping. It’s a good idea to display their abandoned cart items and remind them to finish the purchase.

Go to Growmatik’s People page and select all leads or all customers and input the following filters:

Shopping activity > has abandoned cart > yes

WooCommerce conversion rate - abandoned

Then you can go to the WorkShop > personalization and click on create personalization. Then, select the page you want to add items to:

  1. On the selected section of the page, click the icon to open the elements list, then select products.
  2. Click on the and, by clicking on the content (which shows most recent by default), you can choose abandoned cart items to be displayed on the webpage.

Click save & exit

WooCommerce conversion rate - abandoned cart

To automate this, go to the  WorkShop > personalization and find the personalization you want to create a rule for. Then, click on the icon, choose Automate and select an audience type.

WooCommerce conversion rate - personaization

Then you will be redirected to the Automation page, where you should give a name to your automation, and click on the Create Rule button to automate that personalization.

WooCommerce conversion rate - abandoned items

Display an engaging exit-intent popup

Consider a user who visited a sunglass product page on your WooCommerce site and didn’t buy it. By offering a good discount on this product at the last moment, you can increase the chance of converting him to a customer. Exit-intent popups are effective if you know where and how to use them properly.Just go to the Automation page and select the Pageview as a condition and enter the URL of that specific product.

WooCommerce conversion rate - show popup

Then select Show Popup as action and choose On exit. Now click on the Create Popup button and design your popup.

WooCommerce conversion rate - popup sunglasses

Using FOMO to re-engage inactive customers

You can use FOMO “fear of missing out bias” to reactivate your inactive users. Catch their attention by talking about latest updates or anything else that may have happened at your business while they were gone.First, You should identify inactive customers. In order to do that I suggest using RFM segmentation. In Growmatik, go to the People page, select All Customers and add the following filters for Shopping Activity.

Purchase date > more than X days

Number of orders > less than x

Order value > less than x

WooCommerce conversion rate - rfm segmentation

Now you can send an email to these users and include products with discounts for a limited time. Go to WorkShop and click on Create Email, choose a template and add your discounted products in your email.

WooCommerce conversion rate - discounted products

Now you can automate this by going to  WorkShop > Emails and finding the email you just created. Then, click on the icon, choose Automate and select an audience type.

WooCommerce conversion rate - email automation

It will redirect you to the Automation page. There, choose the created segment for your inactive customers and give a name to your automation. Then, click on the Create Rule button to automatically send emails.

WooCommerce conversion rate - inactive customers

Final words

In this article we showed some samples in three main marketing channels – Email, popup and webpage. Personalization is quite a simple process nowadays, but it’s a necessity for WooCommerce businesses hoping to stay relevant.Fortunately, you can now improve your WooCommerce conversion rate using personalized automation tools faster and easier than ever before.

How to Monetize a WordPress Blog

how to monetize a WordPress blog featured

There are two types of blog owners – those who write a blog to earn some money, and those who do it for free to share some information or ideas. Maintaining a blog requires some money, however. You need to pay for web hosting and renew your domain name annually. So, if you run a blog and are planning to earn money from it, this article will give you some tips on how to monetize a WordPress blog. Since WordPress is the default blogging platform, I’ll recommend some plugins that will be useful for monetization.

Pay Per Click Advertisements

One of the most popular ways to monetize your WordPress blog is to display advertisements. You can integrate these ads into your pages as static displays or as popups. There are two payment models for display ads:

  • pay-per-click (PPC): You are paid when someone clicks on an ad on your site.
  • pay-per-impression (PPI): You get payment when a user sees an ad.

The PPI type is cheaper, as you don’t need users to click on any of the ads, but the PPC type will give you more money as long as users click on the ads at a consistent rate. Note that running ads requires your website to have a lot of traffic. Also, make sure you don’t include too many ads on one page, as you’ll end up annoying readers.

To start advertising, you’ll need to sign up for an ad network. Google Adsense is one of the most popular options, but there are many other networks as well. Additionally, WordPress provides some helpful plugins you can check out. As an example, the AdRotate Banner Manager plugin helps you to manage all of your ads directly from WordPress. You’ll be able to customize ad placement, check analytics and connect to several ad networks (including AdSense).

I also recommend you to read this official blog about AdSense to learn more.

If you are wondering how to set up ads, you can find instructions from Google Support. Once your AdSense is approved, it’s time to place the ad code on your website. This guide from Google Support will be helpful as well.

The advantages you’ll get from PPC include easy to set up passive income. Once you put the ad codes on your site, you don’t need to do anything else. Relevant ads will be shown automatically. As for the disadvantages of PPC, if there are no clicks on the ad, you’ll get no money. You won’t be paid much with page views only.

Using Affiliate Links

The easiest way to start making money from your blog is with affiliate links. Affiliate links are links that you put in your text or on images that will redirect your readers to a third party website. If your visitors make a purchase on that website, you’ll receive a commission for referring them.
Becoming an affiliate marketer is easy. Many websites that sell products or services have a link for “affiliates”. Other sites work through an affiliate network. With these sites, all you need to do is click a button to apply for their program. One of the most successful affiliate networks is Envato. You can read their affiliate program terms in this PDF document.

Important things you need to know about affiliate marketing:

  1. Affiliate programs have strict terms and conditions. You’ll need to read them attentively to prevent being banned.
  2. Don’t forget to notify your users that you are using affiliate links. It might be obligatory in some countries. Additionally, Google might delete your website from search results if you do not mention it.
  3. Use affiliate links only in the right context, as you might lose your visitors because of bad user experience.

The pluses of affiliate links are that you’ll get high passive income. It’s much better than PPC, assuming that users buy products referred from your site. As for the minuses, if users don’t make purchases, you’ll get no income.

You can read more about creating an affiliate website via this blog post.

Sponsored Posts

If you’re running a popular blog, you can help external websites to get a lot of traffic. Many companies prefer to pay such blogs to publish sponsored posts forwarding blog visitors to their sites.

You’ll make money for your blog much quicker with sponsored posts than with affiliate links or ads. If you don’t get proposals for sponsored posts or reviews, you’re free to contact companies requesting sponsorship. If your site audience is large you’ll probably get an agreement for a sponsorship deal. Companies need to be sure that your sponsored post will lead to sales so that their investment is not a waste of money. This form of monetization will be better for bloggers with lots of experience rather than for beginners.

Sell Your Products

Another way to earn money with your site is to sell some products online. You can create an ebook, sell your photos or sell a service such as counseling on your website. You can even sell online courses. If you’d like to create an eCommerce site, you can achieve this with the Woocommerce plugin, which is bundled with the Jupiter X theme. Jupiter X also provides a lot of Shop templates you can choose from, saving you a lot of time when designing a product website.

monetize a WordPress blog - eCommerce

An advantage of selling products is that you won’t end up banned, which could happen with PPC or affiliate marketing. On the other hand, you have to be patient and wait until you find your audience for your sales to increase. You need to promote your products and provide a good service to your buyers. If your products and your attitude are good, you’ll make a lot more money!

Accept Donations

The next option to monetize your WordPress blog is to allow your audience to make donations. To achieve this, you can use WordPress plugins such as Give, Charitable or PayPal Donations. You also can create a Call To Action button in the header and forward visitors to the donation form to make a payment.

monetize a WordPress blog - accept donations

To get donations, you should create valuable content for free first. You need to spend a lot of time researching to create a blog post that will interest a variety of readers. If you do, your audience will notice your hard work and will be ready to donate. When using WordPress plugins for donations, you should be ready to set up everything yourself, and if there are any transactional errors you will have to investigate them yourself or ask for help at the plugins support.

There is also the possibility to take donations for your products using the WooCommerce plugin. If you use this plugin on your website, we recommend reading this article.

Freelance Blogging

If you are fond of blogging, you can use your own blog to advertise yourself. Potential clients will find you to blog for them and will be ready to pay. This way of earning money is very popular in some blogging niches. For example, you can run a personal blog and create a “Hire Me” page to find freelance clients.

monetize a WordPress blog - freelance blogging

If someone likes your writing, they will definitely contact you and propose some work. To be noticed by clients, you need to have a lot of traffic to your website. Here are some tips you can use to triple your WordPress blog traffic.

Wrapping Up

So, what option will be the best for you? How you monetize a WordPress blog all depends on what you want. If you want to get passive income, you should consider using PPC or affiliate marketing. You should think about the quality of your blog and ensure that the content is valuable for your readers so that they will want to come back to your blog again and again. It’s important to note that you won’t get a lot of income right away. You should try all methods, mix them, and then decide which one works best for you.

Blogging is a balance of quality content, good traffic and an engaged audience. If you achieve all of this, you’ll make your blog profitable for sure!

How to Do A/B Testing in WordPress with Jupiter X and Google Optimize

A/B testing in WordPress featured

So you’ve decided to run A/B testing on your WordPress site with Google Optimize but you still don’t know much about it? 

Google Optimized is probably the best tool out there to help you analyse the results of A/B testing on your site. It’s a widely popular tool that helps you gather important data about your website visitors’ behavior and use those results to improve your conversion rates.

In this article, I will cover the basic steps that are essential to running successful A/B testing in WordPress.

What is A/B Testing?

A/B testing is a user experience research technique also known as Split Testing. This technique is best used when we want to receive user feedback on the new design of a page/post/product, for example.

Site owners tend to use default pages for products, pages and posts. These pages contain all the necessary information users need, such as product information, images, process, etc. Each page has a predefined layout and style; however, things change over the time, and new trends in design, new technologies in user acquisition or shifts in user behavior may trigger us to make changes to our pages. Unfortunately, changing your webpage can be a difficult process, and it’s tough to decide which changes are worth it and which are not. That’s where A/B testing comes in handy.

Before making significant redesigns to the site by adding a new design or removing some information, it’s a good idea to experiment with these new features by running A/B testing to reveal how users will interact with the new changes. A/B testing is good to use when:

  • Testing different names for pages or products
  • Unveiling a new landing page with different content and setup
  • Testing different colors for CTA buttons
  • Completely redesigning a page using different content, layout, media and CTA buttons

The process of A/B testing involves a random experiment where two or more page designs (posts, product pages, etc.) are displayed for different segments of the audience. The purpose of the experiment is to define which version has the greatest impact on sales or makes the biggest impression.

Suppose you need to test a redesigned landing page with new pictures and videos. You can’t simply make changes to your real working page. Instead, you have to create a new page and redesign it with new content, new media and layout. Once you’ve done this, you can run a time-scheduled experiment by randomly sending your users to those pages.

After finishing your A/B testing, all you need to do is collect and review the results of your test. These results are usually highly dependent on the characteristics of your A/B testing, but in general this technique will simplify the process of making changes to your pages.

It’s also very important to choose the right tools to perform your A/B testing. In this blog post, we will use Google Optimize, the most popular tool for running A/B testing for WordPress.

Setting up Google Optimize

There are many A/B testing tools out there and they all have their advantages and disadvantages. Some of them are expensive and some of them are completely free to use, some of them have features that you will never use and some of them are just the essentials. 

In my opinion, Google Optimize is an excellent tool to start experimenting with A/B testing because it’s free to use and easy to set up and, while it does not have a dedicated plugin for WordPress, it’s very easy to integrate in WordPress. Another benefit of Google Optimize is that it ties in with another great tool, Google Analytics, which you are probably already using. The integration of those two plugins makes Google Optimize even more useful than its competitors.

Setting up Google Optimize is easy and can be done in several steps. Let’s dive in and see how it works:

Open up the Google Optimize page and click the Get Started button to start:

Google will ask several questions about sharing your data with other services. You may select whatever options you want here as it will not affect the functionality of the service.

In the final step you will have to agree with the offered services and click Done. Then you will be able to view the Google Optimize dashboard.

You will see this window in Google Optimize where you can start a new campaign starts by clicking on the Let’s Go button:

Pretty easy right? Once those steps are complete, we’ll need to link our site to the Google Optimize dashboard.

Linking your site to Google Optimize

Google Optimize can be linked to your site through two different methods:

The first method is to simply add this code snippet at the top of the <head> tag of your website:

<script src=""></script>

This code is unique, contains your Google Optimize code and can be found in your dashboard by clicking on Settings at the top right corner:

We will not cover in detail how to add such snippets to your WordPress head tag in this article. Instead, I recommend checking out this link covering the entire process in detail.

Luckily, adding this code in Jupiter X is very easy! Simply go ahead and navigate to Jupiter X > Control Panel > Setting. There you will see the option to add a linking code snippet:

The second method is easier and can be done using WordPress plugins. These plugins take care of integration since they already support Google Optimize in addition to their main functions. These plugins include:

  • Google Site Kit: This is an official plugin from Google that’s used to connect several other Google products to your website, including Google Optimize.
  • GA Google Analytics: In this plugin, you’ll need to provide a Google Optimize tracking code to connect Google Optimize. Please see the above image for an Optimize code.

Based on this information, it’s up to you to decide which method to use. If you only want to add Google Optimize, you may need to add the link to your WordPress Head tag. If you are thinking of adding some other Google products, then you may consider using the Google Site Kit.

Create and run your A/B testing

Now that we have everything set up, we’re ready to create our first A/B testing! Go ahead and click on the Let’s Go button (we posted a screenshot above) and give your project a name. You’ll also need to provide a link to the page you want to A/B test:

Once you click on the Create button you will be redirected to a page where you’ll need to add variants of your existing pages:

Use the Add variant button (Please note that the Google optimize Chrome extension is required to edit pages via Google extension. The program will offer to install the extension when you first click on Add Variant). Input the name of your test page, such as “Better Color for CTA,” for example, and click Done.  A variant of the page will be created for testing and you will see this screen:

A/B testing in WordPress

Now, click on the blue Edit button and your page will open in an editor. For example, this is original page view before editing:

A/B testing in WordPress - before edit

And this is the same page after editing:

A/B testing in WordPress - after edit

As you can see, I changed how the CTA button looks. I’m interested in determining which button is more attractive: a transparent button or one with solid color.

Once you are done, click on the Save button at the top corner and then Done. Your testing page has already been published and you will be redirected to the screen containing the variants page.

From there you can add as many variants as you want. After you make your test pages, just scroll down to see the Page targeting and Audience targeting sections. Here you’ll need to set up rules of appearance for your test page and select the audience you want to show your test to:

A/B testing in WordPress

On the next step in Measurement and Objectives, Google will ask you to link Google Optimize to one of your Google Analytics. Choose one from the link and it will be selected:

A/B testing in WordPress

On the final step in the Objectives, choose the objective of your test and save it. There are predefined objectives to choose from but you can also add custom objectives as well:

A/B testing in WordPress

Once you have completed all of these steps, scroll up and you will see that the Start button has been activated. This means that you’re ready to go!

A/B testing in WordPress

Test results review

Now, once you have everything set up and are running your A/B testing, you can take a break and wait for the results. Don’t expect to see them immediately, as it will take more than a week to see normal results on your results page, which will look like this:

A/B testing in WordPress - test results
Image courtesy Google Optimize

As you can see from the results above, you should now have a clear understanding of how the experiment was performed. Conversion rates for the original page are still better than conversion from the special offer test page, which means that the changes are not so effective since the original page performs way better than the new test page.


Now that you know more how to properly perform A/B testing with Google Optimize, you have the chance to steer your website in the right direction. Making changes on your website, especially if you have a large audience, may be risky unless you test them first. With a clear understanding of A/B testing in WordPress, you can stay one step ahead and run experiments and testing campaigns to get more constructive feedback from your audience.

How to Create an Affiliate Marketing Program in WordPress

affiliate marketing program in WordPress featured

Not so long ago, I completed a project that involved running an affiliate marketing program on a Jupiter X website. I learned a lot about affiliates and how to integrate them into a WordPress website. I thought it would be useful to share what I learned with the readers of this article. If you want to run an affiliate marketing in WordPress and don’t know where to start, read on! 

Before we get into the details, let me explain what affiliate marketing is: it involves selling a product or a service and paying a commission to those who introduce your product or service to new buyers. This is a win-win situation for everyone involved: the product owner will sell their product or service, the affiliate will get rewards for sending real buyers to the seller and the buyer will get what they want. Many companies use affiliate marketing as their main marketing strategy with excellent results.

I’m not going to talk about why affiliate marketing is important or introduce ways to get the most out of it. Instead, I just want to guide you through what I did to set up an affiliate marketing program in WordPress.

The basics of affiliate marketing

The goal of affiliate marketing is to reward those who connect buyers to your brand. Based on this, to have an effective affiliate marketing program you need:

  • A place where you register affiliates and store their data.
  • A way to recognize and track affiliate income traffic and affiliate sales.
  • A method to pay affiliates upon request.

In this case, we’re choosing to store the data via a WordPress website, complete with a Jupiter X shopping templates theme. In order to run the affiliate marketing program, I will use the WP Affiliate plugin. This plugin has the basic features required to run an affiliate website and also include great addons that can add to the site’s overall functionality. In order to see the complete list of addons, check out this page.

The best way to recognize and track affiliates would be to generate a specific link for each of them. The affiliate would then use the link wherever they advertise your brand. The link would look something like:

Here the “ref” query parameter is the referrer’s ID on the website. When a user visits via that link, a cookie value will be stored on the visitor’s browser containing the referrer’s ID. From then on, until the cookie expires or gets deleted, every activity that user completes on the site will be linked to that referral ID. If the user buys something, the website knows that this sale was made via a referral and therefore involves a commission fee. Based on the product or service, you may want to decide on how many days a referral link should remain valid. In my experience, more expensive services or products require more time for visitors to decide if they want to buy it. For such items, you’ll need to increase the cookie expiration interval in the plugin settings. By default, browsers will store cookies for 7 days, so if a user clicks on the affiliate link, leaves the website and returns at any time over the next 7 days, the commission still goes to that referral. Check out this page for the answers to some common questions about how this process works.

Image courtesy

Installing and activating the plugin

In order to use the Affiliate WP plugin, you need to purchase it from its developer’s website. Check the prices here and choose your plan, then proceed with the process and download the plugin package from the website. Next, go to your WordPress website admin area -> Plugins -> Add New, hit the Upload button and upload the package. After installing the plugin, simply activate it via the plugins list. I also recommend that you install the Affiliate Portal addon because it will give your affiliate page an excellent makeover.

Activating the AffiliateWP plugin

The next step involves activating the plugin by adding the license key to it. Do this via the Affiliate settings page.

Registering the AffiliateWP plugin license

Configuring the AffiliateWP plugin

The next thing you’ll need is a page to act as your affiliate area. Create a page and put this shortcode into it:


Then, come back to the Affiliate Settings page and set that page as your affiliate area. Some other configurations may still be required to make it work as you want it to. In my case, I wanted users who were already registered on the website to have the option to register for the affiliate program as well. Below the settings page there is an option that allows you to choose whether you want to show only the registration form or login page or both. For my site, I chose the option to display only the registration form.

Setting the affiliate form registration method and fields.

Now if I check the affiliate area, the page would appear as follows:

Affiliate area page for registering as an affiliate

You can set the required form fields in the settings page. You can also modify the form fields using the hooks available on this github repository. (Snippet available here as of the date of writing this article)

After registering as an affiliate, the user will need to wait for the website administrator’s approval. While the affiliate is pending approval, they will see this notice on the affiliate area page:

Once an affiliate has registered, the administrator can approve them via the WordPress admin area -> Affiliates -> Affiliates.

Accepting an affiliate

Once approved, the new affiliate will receive an email notification. In order to change the email content, you can override the email template on your child theme. For more information, please read this article. You can modify the current email template and settings via Affiliates -> Settings -> Emails.

Overriding email settings and notifications

Each action has a corresponding email notification here that you can manage and customize.

Once you’ve approved the affiliate, if you have not installed the Affiliate Portal Addon yet, your affiliate page will look like this:

Affiliate area page

However, if you have installed the Affiliate Portal Addon, your affiliates will see this page:

affiliate marketing program in WordPress
Affiliate area after installing Affiliate Portal Addon

On the affiliate area page you can see your affiliate statistics, including visits, number of referrals and other handy figures. The affiliate can generate a link to the website and use it when promoting your brand. The links generated on the Affiliate URLs tab will all end with the “ref” query parameter. You can also add a specific campaign name so that the links look something like this:

Adding a campaign name can help track visitors and will show which campaign was the most beneficial for affiliates.

affiliate marketing program in WordPress - URL generator
Affiliate URL generator

So far, so good. Now it’s time to integrate it all with your shop. You may use the affiliate model for all kinds of e-commerce. It doesn’t matter if you sell goods, run a learning website, a membership-based website or even a donation service. The biggest benefit of AffiliateWP is the long list of available plugins that you can simply integrate it with. In order to see the available integrations, navigate to AffiliatWP’s settings page and open the Integrations page.

affiliate marketing program in WordPress
Integrating WooCommerce and AffiliateWP

As you can see above, I’ve just enabled the WooCommerce integration. You don’t need to do anything else to integrate the plugin with WooCommerce. As soon as you check that box and save the settings, the integration will be complete. The rest of the process is as follows:

  • The affiliate will register and generate a link to your website containing a unique referral ID.
  • Visitors will click on that link included in affiliate ads.
  • The visitor will then browse your website and consider buying something.
  • The visitor then buys something via the same device they originally entered your website with over the course of the next 7 days (or whatever time interval you set for cookie expiration in the AffiliateWP plugin)
  • The commission will be added to the affiliate account and wait for the affiliate to request a payout.

There is another step before the commission goes to the affiliate. The visitors may add something to their cart, but pay for it later. Before the payment is complete, the visitor still counts as unpaid. As a result, there are 4 statuses for an affiliate transaction with the AffiliateWP plugin:

  • Pending – This is a referral that has been generated but has not yet been confirmed
  • Unpaid – This is a confirmed referral that is waiting to be paid out to the affiliate
  • Rejected – This is a referral that has been rejected
  • Paid – This is a referral that has been paid to the affiliate

“All referrals begin with a status of Pending and are then updated to one of the other three statuses when particular events occur. A pending referral means that it is waiting to be confirmed as valid. Referrals are confirmed when orders in the eCommerce platform are completed.

A referral is marked as rejected when the corresponding order in the eCommerce platform is refunded or deleted. In Affiliates → Settings → Misc, there is an option to automatically mark referrals as Rejected when orders are refunded or deleted. If enabled, AffiliateWP will mark referrals as Rejected for you. If disabled, or your eCommerce platform is not fully supported, referrals will need to be rejected manually.

Referrals are marked as Unpaid when the corresponding order or signup is completed in your e-Commerce or membership platform. Once marked as Unpaid, the referral is considered earned and should be paid out to the affiliate.

Referrals receive a status of Paid as soon as they have been paid to the affiliate. Once marked as Paid, a referral is considered closed and no further status changes are applied to it.”

Full documentation on the referral status is provided here.


Your affiliates will get paid as soon as you generate a payout for them or pay them and then add the payment info as a bank transfer invoice to their payout list. There is currently no automatic paying out system. You can generate a form to get in touch with your affiliates and allow them to request payment. 

You can integrate your website with a payout service as described in this article. Using payout services allows you to pay affiliates in more than 30 different countries directly to their bank accounts in as little as 3 days. Learn more about using Payouts Service here.

There are other methods that allow you to pay your affiliates with PayPal, for example. Check the above article for more info. 

The payout workflow involves you, as your website administrator or affiliate manager, generating a payout. This payout then goes out to all users for referrals that are paid to you within a certain date range and for a minimum withdrawal amount.

affiliate marketing program in WordPress - create payout
Generating a payout to affiliates

After the payout is complete, the status for each referral within that date range will change to Paid and will not be considered for upcoming payouts.

Creative Banners

It’s possible to provide banners and visuals for your affiliate marketing program, complete with embed codes that let your affiliates use them for whatever promotions they run on their websites.
In order to add banners, you should navigate to Affiliates -> Creatives and add a new Creative. Here you need to add the title, description and, most importantly, an image that will serve as your affiliate advertising. Here you can find some marketing advice on how to get the most out of your banner images.

affiliate marketing program in WordPress - add new creative
Adding a new creative banner to the list of available creatives

After adding the creative material, your affiliates are able to see and copy the code through their affiliate area page and simply paste it to their website.

affiliate marketing program in WordPress - creatives
Creatives on the affiliate area page

Wrapping up

In this article we reviewed how to run an affiliate marketing program in WordPress with the AffiliateWP plugin. To be honest, when I accepted the project to integrate a WordPress website with this plugin, I had no idea what I’d gotten myself into. The website that I was going to integrate it to wasn’t using any premade integration services. I had to find out for myself how affiliate marketing programs work and then try to implement one using actions and hooks. The key point I want to share with you here is that you need to know the status of each visit. What happens to a user that decides to buy a product after 10 days? What happens if they open the website using another device? What if the service you are selling requires two payment steps? These are the sorts of questions you should consider. Fortunately, the documentation of this plugin is great. The codebase is standard and you can find some samples in the github repository. This all adds up to make a great experience for both users and the developers who work with this program.

Please share your comments and questions below in the comments and don’t forget to subscribe to our newsletter.

How to Create an Online Learning Website with Jupiter X

online learning website featured

When talking about online learning, we usually imagine online courses where someone can be taught new information using digital technology. Online courses are convenient because students can complete the course from the comfort of their home and usually for a lower price.

Also, online courses can provide different types of information. For example, many involve videos, images, slideshows, and other multimedia and interactive elements.

There are a lot of free and paid WordPress LMS (Learning Management System) plugins that you can find to build online courses. Among these plugins, LearnPress plugin is the most useful and popular LMS. It also happens to be free to use! The plugin has a very good user interface allowing you to intuitively manage your online learning website. With this WordPress LMS plugin, you can easily create an educational online learning website even if you don’t know how to code.

In this article, you’ll find instructions on how to create an online course and thus, an online learning website with the LearnPress plugin and Jupiter X theme.

Installing LearnPress

The process of installing the LearnPress plugin is very simple.Navigate to Plugins > Add New on your WP Dashboard, search for “learnpress”, click on the “Install Now” button and activate it.

Once it’s installed and activated, go to LearnPress > Settings to configure the settings to fit your needs.

In the “Pages Setup” section, you’ll see the pages that were automatically imported and assigned after the plugin installation. You are able to edit them or create new ones. 

In the “Currency” section, you can set up the type of currency you want to accept for your online course and select how it will be formatted visually on your site.

In the “Payments” area, you can enter your email address associated with PayPal. You’ll be able to accept payments without needing to have an active shopping cart. Simply click on the “PayPal” link and enter your PayPal account email address. Then, click the “Save Settings” button.

Configure the other settings tabs to complete the installation.You can install a sample course under LearnPress > Tools > Course Data. I suggest you do this so you understand what courses will look like.

You will be able to view the frontend of the sample course on your site.

Creating a New Course

Now it’s time to create an online course. In your WordPress dashboard, go to the LearnPress tab and select Courses. Click on the “Add New” button.

You’ll notice the page editor looks like a standard WordPress page. Enter a course name and a description to explain what the course is about.

You can also add a category to your course. It’s useful for keeping things organized if you plan to create multiple courses.
Next, under the Curriculum section, add your lessons and sections.

Sections are subsets of the entire course. Lessons produce the actual content in each section. Note that the Select Items button provides options to connect quizzes and other lessons that have been already created under LearnPress > Lessons.

Configuring the Course Settings

Under the Curriculum section you’ll find the Course Settings section, which consists of 5 tabs:

  • General
  • Assessment
  • Pricing 
  • Extra Information
  • Author

In the General tab, you can configure the duration of your course, how many students can join, how many have already taken the course, whether you allow users to re-take your course, as well as block the content once the course is completed and set an external link to redirect users when they click the “Buy” button.

The Pricing tab allows you to set the price for your course. You can even set a sale price. If you don’t want to add a sale price, simply leave this section blank.

In the Extra Information tab, you can add additional info such as requirements for your course, a FAQ section with popular questions and answers or a description of your target audience.

The Assessment tab gives you options on how you prefer to evaluate students. You can choose the following:

  • Evaluate via lessons
  • Evaluate via results of the final quiz
  • Evaluate via quizzes passed
  • Evaluate via questions
  • Evaluate via mark

The name of the course instructor is shown in the Author tab. Note that you need to create a WordPress user when adding a new instructor.

Adding Lessons and Quizzes

Now let’s add the course content via the LearnPress > Lessons menu.

You can add any content to the WordPress editor, including text, video, audio, PDF documents and images. However, adding content via the Elementor editor is a much better route. You just need to enable “Lessons” in Elementor > Settings > General.

In the Lesson Settings section, add the time in minutes of the lesson duration. Also, don’t forget to uncheck the Preview Lesson option. You can enable it only if you want visitors to preview the lesson content without signing up for the course.

Once you have created all the lessons, it’s time to add quizzes.Under LearnPress > Quizzes click on New Quiz.

online learning website

Add a title to your quiz, then write a description or instructions for your quiz in the text box. After that, start adding the questions to your quiz under the Questions section.

online learning website

When you write a question, you can click on the Add as New button to select a question format, such as:

  • True or false
  • Multiple Choice
  • Single Choice
  • Fill In the Blanks

Once you have added all questions, you can customize the quiz in the Quiz Settings section.

For example, you can choose whether to show the correct answer when a student selects one, set the duration of the quiz, enter a minimum percentage for a passing grade and more.

online learning website

Here is how a student sees a quiz on frontend:

online learning website

Link Lessons and Quizzes to the Course

When all lessons and quizzes are created, you’ll need to link them to the proper courses.To do this, go to LearnPress > Courses and open your Course in the editor. Under the Curriculum section, click on the Select items button to choose a quiz you have already created.

online learning website

You’ll see a window with two tabs: Lesson and Quiz. Click on “Quiz”, and select the quiz, then click on the “Add” button.

Repeat this process if you need to add more quizzes or lessons. Once you’ve added all lessons and quizzes to your course, make sure you have saved the changes by clicking the “Update” button in the WordPress editor.

Here is how the course will look on frontend:

online learning website

Note that, before starting a course, a student must log in first to enroll in the course. After they click the “Start Now” button, they will be redirected to the Checkout page to pay for the course if it’s not free and will need to sign in.

online learning website

After passing each lesson, the student can take the corresponding quiz. Once the whole course is finished, he or she will get a certificate. More detailed information can be found in the LearnPress documentation.

Promote Your Online Course

The next important step is to promote your online course, especially if you are going to sell the course. Here I’d like to recommend to you the most effective methods, such as:

  • Creating a unique landing page. It’s a good idea to create a landing page for your online course and provide a link to it in your promotions. Jupiter X templates are very helpful in this case, as you only need to import the pages rather than creating a landing page from scratch. Check this demo to see an example of an effective landing page.
  • Sharing on social media. Use your social media channels to post a link to your online course. 
  • Explaining why your course is different from others. What unique options or benefits set it apart from others? Don’t forget to highlight that in your promotions.
  • Promoting the online course via your email list. If you have a newsletter, use it to spread the word about your online course. 
  • Offering a discount to your social media followers is a good idea as well. 

For example, you can add a ‘sale’ price to your online course in the LearnPress plugin. To do this, go to LearnPress > Courses. Open your course, then click on the Pricing tab under the Course Settings section:

online learning website

After you enter the sale price, you can schedule a start and end date of the Sale. Click on the “Schedule” link and, once the changes are done, be sure to update your changes.

Wrapping Up

As you can see, LearnPress is a great, easy-to-use plugin to start building your online learning website. This plugin has a lot of amazing features and functions, so don’t hesitate when deciding what plugin to choose, as LearnPress is a great solution for schools, universities, or education institutes. If you want to check the LearnPress documentation, you can find it on this page.I hope this article has helped you create your online learning website using LearnPress and that you didn’t find it complicated, as the process is quite simple. You can also view Jupiter X demos for courses and install one of them on your WordPress site, then include courses using LearnPress.

How to Boost Conversion Rate with Personalization

Regardless of what kind of business you run, you’ll always have times when reality doesn’t match your expectations. But without the proper data, it’s virtually impossible to determine what needs to change with your marketing. One key piece of data is the conversion rate. This figure helps you test out the effectiveness of your marketing plan and determine where and how to adjust it. To learn more about conversion rate and how to boost it using cross-channel personalization, read on!

Explaining the conversion rate

First thing’s first, what is a conversion rate? It’s a marker showing how many visitors from different sources have been converted. Depending on your marketing goals, customers count as converted if they have made a purchase, downloaded something, subscribed to your website and more.

This indicator will be the yardstick by which you measure how well your marketing works. Whether you’re running campaigns or relying on the design of your webpage, paying attention to your conversion rate will help you regularly adjust your strategy to ensure maximum return on investment. If something needs to be altered -or scrapped completely -your conversion rate will tell you.

The specific conversion metrics you monitor depend on the kind of business you are running. Here are the most common kinds of conversion rates out there:

  • Converting a visitor into a prospect (someone who fills in a contact or inquiry form)
  • Converting a visitor into a subscriber/lead
  • Converting a lead into a customer 
  • Converting a customer into a repeat customer 

Using personalization to boost conversion 

Crafting a better user experience involves more than just a well-designed website. Rather, it’s about giving the user what they’re looking for in the form of personalized content. Nowadays, personalization doesn’t stop at adding a user’s name to your emails, but involves a whole strategy for personalization at scale. To put your best foot forward through personalization, you need to make sure that you have a unified cross-channel strategy. Here are some ways to use personalization to boost your conversion rate:

Personalize text with dynamic keywords

What’s a dynamic keyword? It’s any text in your content that can be replaced with a new value, and it’s a key element in personalization. At the simplest level, dynamic keywords help you address each user individually based on their attributes. Because they feel like you are addressing them personally, users are more likely to respond to your marketing material and ultimately convert.

Target specific locations

Geolocational targeting lets you change content based on location of your visitor. This could involve changing the language of your landing page, or showing the local weather conditions. Businesses use this tactic for different purposes, but it generally increases engagement and chance of conversion. Geo-targeting works partly because search engines are more likely to show localized page results or sites with regional pricing.

Personalize your landing pages

Relevant customer segmentation and audience behavior should guide how you choose to personalize. With the right information about customer attributes, behavior and preferences, you can craft custom messages that truly feel personal.

Personalization can be based on the following:

  • On-page behavior including:
    •  Scroll: scrolling halfway down the page triggers a popup.
    •  Click: users who click on a specific CTA receive an email.
    •  Visit: users visiting a specific category are shown a popup.
    • Spent time: users spending more than 30 minutes on your website are shown special offers.
  • User activities including:
    • Number of orders: sharing coupon popups with users who have placed a certain number of orders.
    • Amount of orders: Thank users who have spent over a certain amount with a ‘thank you!’ popup and a discount for future purchases.
    • Away users: share a personalized greeting and recommended blog reading with users returning after a period of inactivity.Purchase-history: increase engagement by adding cross-sell items to your website and emails.

Personalize your email campaigns

Customized emails do more than just boost your open and click rate. They foster a trusting relationship with your users, allowing you to increase conversion and ultimately beat out the competition. Your emails should be relevant and personalized from the subject line to the greeting and content.

Wondering what the easiest route for email personalization is? Growmatik can help you out. The software covers both personalization and sending so that you don’t need to rely on a third-party email service such as Amazon AWS.

For the following categories of emails, personalization can significantly impact conversion:

  • Welcome emails
  • Upselling and cross-selling emails (with or without discounts)
  • Follow-up emails to inactive customers
  • Abandoned cart reminder emails
  • Newsletters
  • Special offers to loyal customers 
  • Holiday-specific emails (such as Christmas offers)

For example, to increase engagement with its courses, Coursera sends personalized emails to its leads and recommends courses that might interest them.

Employ personalized popups

The truth is, displaying popups doesn’t always positively impact marketing outcomes. Annoying, irrelevant or poorly-timed popups even have the potential to make you lose customers. That’s why designing eye catching and highly targeted popups is all the more vital for driving conversion.

Here are some common situations for displaying popups:

  • Exit intent: when visitors attempt to leave the webpage.
  • Scroll-based: when visitors reach a specific part of a page.
  • Value-based: display exclusive offers or personalized messages to your most valuable customers, or to inactive customers..
  • Source-based: show different popups to users coming to your page from different sources. 

On key holidays, such as Christmas or Black Friday, try offering occasion-specific discounts on your products page!

Display personalized product lists

Use the information you have about your customer’s habits and preferences to speed up the purchase process. Cross-selling and upselling emails are particularly helpful for boosting your conversion rate.

Display personalized blog lists

You can do something similar with blog lists. Use your user’s reading history to recommend new blog posts via personalized pages or emails. It’s likely something will catch their eye and bring them back time and time again.

Implementing personalization to increase conversion 

We’ve now covered all the basics behind the conversion rate. Now, let’s look at the nitty-gritty of using personalization to boost it! For this we’re opting for Growmatik as the perfect tool to implement cross-channel personalization.

Give VIP customers exclusive offers

You’ll need a plan for engaging your best customers, or they might take their business somewhere else. This would be a huge loss! According to the book Marketing Metrics, businesses have a 60% to 70% chance of selling to existing customers. I recommend using RFM segmentation to segment your most valuable customers. Next, go to Growmatik’s People page, select all customers and input the following filters:

Shopping activity > Purchase date > less than X
Shopping activity > Number of orders > greater than Y
Shopping activity > Order value > greater than $

Boost Conversion Rate

Something as simple as addressing users by name across all touchpoints can up conversion rates. In Growmatik, you can add dynamic keywords to personalized emails by doing the following:

  1. Go to Workshop > Emails
  2. Click Create Email 
  3. Select a template to start with
  4. Edit the template by selecting text and clicking on . Then, click on Dynamic Keywords to insert any keyword from Table 1. Add other elements, such as a product list to drive engagement, by clicking on .
  5. Save the email template and assign it to a rule
Boost Conversion Rate

Create a regional landing page

Use dynamic keywords to personalized your landing page as it relates to the user’s location. For example, if you are advertising legal services, add the name of the city your user lives in to the the hero section to catch their eye!

In order to do that, go to Automation:

  1. Click on the from Guest, Leads or Customers column.
  2. Click on Custom rule.
  3. Give a name to your automation and select “all guests”, “all leaders” or “all customers” as a condition.
  4. Click on Choose an action, click on personalize page and select the desired webpage.
  5. By adding the text element in the hero section you can add dynamic keywords.
Boost Conversion Rate - regional landing page

Reactivate customers with win-back offer emails 

Users who haven’t made a purchase or interacted with your website for a long time are considered inactive. How long a user must be absent before they are considered inactive is up to you. To reactivate them, try offering them a discount via your next email. The promise of a tempting discount is sure to boost open, click-through and conversion rates.

To do this in Growmatik, start at the People section, select all customers and start adding filters like:

Shopping activity > Purchase date > more than X 
Site activity > Visit date > more than X

Save them and then go to Workshop > Emails.Click create Email to choose a template and start customizing it:

Boost Conversion Rate - win back offer

Then, edit and personalize the subject line using dynamic keywords through the sending options.

Show off cross-sells on your webpage

Using Growmatik’s “product” element, you can add upselling and cross-selling items to your web pages and emails.

To add cross-selling items to your website, first go to Workshop > personalization and click on create personalization. Next, choose the page you want to add items to:

  1. On the selected section of the page, click the icon to open the elements list, then select products.
  2. Click on the and, by clicking on the content (which shows most recent by default), you can choose cross-selling products to be displayed on the webpage.
  3. Click save & exit

You can automate this by going to Workshop > personalization and finding the personalization you want to create a rule for. Next, click on the icon, choose Automate and select an audience type.

You will then be redirected to the Automation page, where you should name your automation. Lastly, click on the create rule button to automate the personalization.

Boost Conversion Rate - cross sell

Parting thoughts

Want to understand what’s really going on with your business? Take a look at the numbers! Learning from key metrics is vital for helping your business thrive! In this article, we defined “conversion rate” and discussed real-world strategies for improving it using personalization.

How to Leverage Personalization to Scale a WooCommerce Website

personalization to scale a WooCommerce website featured

In marketing, it’s easy to forget that each of your customers is a unique individual. Each and every one has their own personal background and preferences, and these factors will affect their behavior in your online store. They also lead to different needs, expectations and demands. Studies show that 81% of customers expect brands to approach them at the right time and cater to their wants and needs. How can we show our customers that we respect the differences that make them unique? By preparing personalized content and creating tailored solutions that speak just to them!

When you receive something you like or need, it probably brightens your mood! That’s why personalization is such an important tool for improving customer retention on a WooCommerce site. Many brands believe in the power of personalization to cut through the flurry of generic advertising materials that customers are bombarded with on the daily. In this article, we’ll walk you through how to leverage personalization to scale a WooCommerce website. 

What is Personalization?

Personalization involves what your site looks like and what features are presented there. Personalization provides online visitors with the content they are looking for according to their preferences and previous activity on your website. This could be previous purchases, their geographic location, specific search criteria and more.The better you personalize your website, the better you can serve your customers and hence increase their engagement rate, conversion rate and lifetime value. When you show your online visitors that you care about their interests and provide them with relevant content, they will not leave your site quickly, but will stay longer and may be convinced to make a purchase.

Ways to Personalize a WooCommerce Website

There are different ways to use personalization to scale a WooCommerce website. The main 5 practices are:

  • Personalized landing pages 
  • Personalized pop ups
  • Personalized products
  • Personalized coupons
  • Personalized emails

Personalize your Landing Pages

One of the most important ways to create website personalization for WooCommerce is through landing pages. Landing pages are one of the touchpoints your customers interact with throughout their lifetime. They probably see it multiple times at different stages of their journey, so their landing page experience should evolve accordingly along that journey. The following are a few criteria on how to personalize landing pages.

Show a geolocal landing page

Geotargeting means personalizing landing pages dynamically based on the visitor’s location. It’s possible to personalize a landing page specifically for the country or region you are marketing to. One way to do this is by redirecting customers visiting from a certain region to an independent domain or website, such as using a “.fr” URL if you are targeting the French market. You can also always add other personalized content to your landing page to make it even more effective.

For mobile users, geotargeting is another useful strategy. Tools like WeGlot and Translate Press are simple solutions for translating your page’s content. You may need to make some changes to the design of the page as well, such as shifting the text to a right-to-left layout if your page is being translated into Arabic.

In Growmatik, the Show Page action lets you redirect users visiting from a certain location to a translated version of your homepage. The Personalize Page action also helps you localize specific elements of your page, from layout to dynamic keywords.

Read more about geotargeting in the article:
How to Use Location to Personalize Your WordPress Website

Personalize your greeting

You likely have different kinds of customers: some are just browsing your site while others are looking to make a purchase. It’s useful to create a welcome message to returning visitors. A simple “Welcome back, John!” will make your customer feel more comfortable. Using Growmatik webpage personalizer tool you can create:

  • A hero section message with their name
  • A personalized greeting based on time of day (“Good morning” or “Good evening”)
  • A message with personalized product suggestions to help them find what they are looking for. This is typically based on UTM values or their location. To give an example, you might choose to display ‘Buy the best doughnuts in the UK’ to a visitor with UTM=doughnuts or ‘The best real estate investment opportunities in Dublin’ to a visitor located in Dublin.

Growmatik’s Personalize action will help you automate hero personalization using dynamic keywords such as time of the day, referral source or visitor’s location.

Create personalized popups and call-to-actions commemorating holidays

Let’s say there’s an important date coming up for your customer. It might be their birthday, the anniversary of their subscription to your site, or a relevant holiday such as Christmas or Halloween. What better way to commemorate it on your site by showing them an exclusive call-to-action or popup? Make sure to include all the relevant design considerations, a coupon for limited-time savings and, of course, your customer’s name!

In Growmatik, combine the Date condition with the Show Popup action to automate personalized pop ups to celebrate key dates with your customers.

Personalize your hero based on purchase or site visit history

When customers visit your site, it’s likely they’re looking for something specific. Fortunately, you can use their recent purchases or site activity to better customize your homepage for them.

In Growmatik, combine the Page Visit or User Behavior > Purchased Condition with the Personalize action to customize your homepage based on customer activity.

To get more information about landing pages personalization, read the following article:
How to Personalize Landing Pages in WordPress.

Personalize your Pop Ups

On most sites, all visitors are treated identically. However, you can show personalized pop-ups only to certain groups of people. This means you can write messages to specific types of visitors, make offers, and create a specific Call To Action button. If you treat your visitors as individuals, you’ll increase the chance they will come back to your site.

To learn more about creating personalized pop ups, read our article on:
How to Create Effective Popups in WordPress

Personalize your Product lists

Many themes, including Jupiter X, generate product lists through a Woocommerce plugin, but they don’t have many options for product personalization. A 3rd-party plugin is required if you want to add features such as date pickers or checkboxes.
One plugin that helps you to personalize products is Flexible Product Fields.

The plugin settings can be found under Products > Product Fields.

Here are the features you get after installing the plugin:

  • The ability to add extra product options on the product page such as single line text, paragraph text, checkbox, radio button, etc.
personalization to scale a WooCommerce website
personalization to scale a WooCommerce website

Here you can find a full description of the plugin.

If a visitor is looking for a specific product, you can recommend other similar items depending on the products they’ve viewed. Such recommendations will increase the order bump and lifetime value of a customer, as well as the chances that a visitor will buy something on your site. Suggest familiar products and a customer will have more options to choose from. In Growmatik, you can include personalized upselling, cross-selling and discounted items on web pages using the Growmatik personalizer tool.

Once your site is connected to Growmatik, you can create personalization for your product using single pages or custom product pages.

Click on the “Create Personalization” button and select a page you’d like to personalize. You can add some new blocks by clicking on the plus icon, as well as deleting some sections or editing existing ones.

personalization to scale a WooCommerce website

Once you’ve edited the page, click on the “Save & Exit” button. After that, you’ll need to create an automation rule when you want to show your custom product page. You can create a rule for guests who are new visitors to your site, leads who are registered on your site, and customers who have made purchases on your site before.

Click on the plus icon and select the “Custom Rule” option:

Set a condition when you want to show a personalized page. For example, you can show it for all guests; for guests from a specific country; for guests who visit a specific page, etc.

personalization to scale a WooCommerce website

Once you set a condition, then set an action – you can select your personalized product page. 

Apart from creating personalized pages, you can also use other actions:

  • Show Popup
  • Send Email
  • Personalize
  • Show Page

Select the action you need.

Personalize your coupons

Creating a coupon section presents a number of advantages: it helps to promote affiliate offers, draw in new visitors and convince previous customers to make repeat visits to your site. Plus, it can help you gather some useful information. Customers will leave their names and addresses, helping you identify what type of customers and which geographical regions make up the most sales for a particular product.

To create a coupon, you can use the plugin Coupon Creator. Install it as you would any 3rd-party plugin. If you aren’t sure how to create a coupon and use the plugin, you can find more information on their Guides page. If you have already installed the WooCommerce plugin, you can easily create coupons in the WooCommerce settings. They have good articles on how to create new coupons and manage them.

personalization to scale a WooCommerce website - personalize coupons

Personalize your Emails

personalization to scale a WooCommerce website - email personalization

When you send emails with personalized content, the recipients feel more special, as the emails are unique and sent just for them. 

Here are the reasons why you should personalize emails:

  • Click-through rates are improved, as are conversion rates 
  • Personalized emails produce more sales
  • Personalized Call To Action buttons provide higher conversion rate than generic Call To Actions

It’s important to note that increasing order bumps doesn’t just happen at checkout. Clever upselling and cross-selling emails make up an important part of any personalized marketing strategy. The goal is to increase your customers’ order sizes, so it does not matter if the purchase takes place during a website visit or via email after checkout.

You can always include upselling or cross-selling suggestions right in the order confirmation email, or you can send them as part of a later campaign, but it’s always important to include relevant products that your customer is sure to be interested in.

In the Growmatik email builder, you can automatically add related product suggestions to your emails. Plus, you can automate them to send immediately after a customer makes a purchase.

Read the following article to learn more about how to personalize emails:
How to Send Engaging Marketing Emails They Can’t Help But Click

Wrapping Up

When users visit your website, you don’t have much time to grab their attention and make them stay on your website longer. This is why it’s so important to make use of personalization to scale your WooCommerce website. Personalizing your web page content is a great way to provide your users with the information and products they are looking for. Ultimately, personalization helps you to connect with your customers, lure them back, and improve your marketing outcomes.

How to Create an AMP Ready WordPress Website with Jupiter X

AMP ready WordPress website featured

Let’s start off by defining AMP (Accelerated Mobile Pages) as follows: a mobile-first approach for web pages that limits visuals and makes pages load instantly as requested. This is especially beneficial for mobile devices. The AMP concept forces website owners to think about mobile users, plus it makes them focus on content instead of just visuals. In the following article, I will explain in detail how AMP works and how you can craft an AMP-ready WordPress website with Jupiter X. 

Accelerated Mobile Pages manage to load pages the instant they are opened, thanks to the following techniques:

  • Prioritizing content  

Instead of waiting for the assets on the page to load, AMPs immediately load the content that users want to see.

  • Telling the browser about page layout before it completely loads 

Browsers have to wait for assets to load before they shape out layout and render page content. In AMP, you do not wait for assets to load, so you have to let the browser know the page layout another way. Using AMP components, it’s possible to inform the browser about page layout without loading any assets.  

  • Loading all JavaScript asynchronously

Forget about using Javascripts the way you were before. AMPs load every JS request asynchronously. This technique may require sacrificing some visuals and functionality, but I’ll tell you shortly how to make up for it with key content.

  • Combining and inlining all  CSS on the page

Since no CSS assets are allowed in AMP pages, all of the required CSS will be combined and loaded using a couple of style tags : <style amp-custom>,

 <style amp-boilerplate>, <style amp-runtime> etc . Apart from these, you are not allowed to link to any external CSS or use !important anywhere. (More info

  • Font Optimization and asynchronous font loading

AMP allows you to use custom fonts but will load them async by default and cause zero HTTP requests until fonts start downloading. It is recommended that you optimize the fonts before using them on any web pages. 

  • Only run GPU-accelerated animations

“The only way to have fast optimizations is to run them on the GPU. GPU knows about layers, it knows how to perform some things on these layers, it can move them, it can fade them, but it can’t update the page layout; it will hand that task over to the browser, and that’s not good.

The rules for animation-related CSS ensure that animations can be GPU-accelerated. Specifically, AMP only allows animation and transition on transform and opacity so that page layout isn’t required. Learn more about using transform and opacity for animation changes.”  (+)

  • Lazy loading ads and media

Load ads, images, videos and iframes when the user scrolls by them on the page. (Lazy Load). This will help the page content load without waiting for media and ads. 

If the above techniques are applied to a page and the page’s HTML tag contains an amp attribute, along with a few other tags, the page will be verified as AMP and it will have the AMP icon in front of it.

AMP icon in the google search results

AMP ready pages are cached and served by Google’s AMP viewer. This makes the pages load INSTANTLY, positively impacting user experience. Even though AMP is not an aspect of SEO, loading speed is a key reason for using AMP ready pages to deliver your content.

Google AMP viewer caches AMP pages, allowing them to load as soon as they are clicked (+)

Although AMP is a revolutionary approach to crafting web pages, it may not allow you to use complex visuals. The main difficulty in having an AMP ready WordPress website is that you are limited to AMP components. 

If your page does not adhere to all the above techniques, your page will not be verified as AMP. However, everything will load as desired. In order to verify if a page is fully AMP compatible, search for “amp verify” on Google and use the field shown to test your site’s AMP compatibility. (sample)

While it’s good to prioritize the  mobile first approach and use AMP to speed up your website as a whole, many will forgo using AMP altogether, as it can be a lot of work. In fact, since AMP only uses its own components and complex visuals are off the table, many prefer to pass AMP by and stick to optimizing their website to improve performance. Not only are there limitations on visuals, but the whole page may require extensive changes.. 

Because of these problems, websites prefer to have two types of pages:

1 – Desktop ready pages that are not  AMP friendly

2 – AMP ready pages, usually with the same URL but with a parameter in the URL and a link to the desktop page telling the browser that it’s an AMP page. (i.e.  – > or or

Since WordPress has the biggest share in the CMS world, the AMP project revealed a specific plugin that is compatible with WordPress and offers tools to convert your website to an AMP compatible website. It has two different approaches:

  • Using an AMP ready theme + AMP plugin to make all pages AMP
  • Using an AMP plugin and building AMP pages from scratch, in addition to non-AMP pages, and using a URL parameter to distinguish the pages.
AMP Plugin configuration wizard

Most of the premium themes out there are not AMP compatible. Jupiter X is also not AMP compatible, which means that, if you want to use the AMP plugin, you have to choose Reader mode. AMP compatible themes also have two approaches:‌ those who convert the page to AMP from top to bottom (not many themes can do this, as it’s a difficult process) and those who offer a simple mobile theme with a limitation on visuals and styles and link the AMP pages to non-AMPs. 

The Jupiter X theme can be considered an AMP compatible theme if you avoid using Elementor and all other third party plugins. If you use Gutenberg and the AMP plugin to build up your pages, you won’t have any difficulties running a fully AMP-ready WordPress website. However, issues occur when you are using the Jupiter X premade templates,  Elementor or third party plugins such as Jet Elements or Jet Tricks. So far, it is not possible to maintain page layout and style and convert it to an AMP page easily.

Imagine that you have a tab and enabled the AMP plugin on your website. What you will see is the tab titles below each other and the tab contents below those, with no capability of switching between the tabs. Why? Because you are not using the valid AMP component for the tab. Alternatively, you should use the Accordion component to preserve tabs in AMP pages. But how? How can the page builder know about this alternative and how should it convert that into Accordion? Simply put, it can’t. That’s why the best approach is to rebuild pages in AMP mode using AMP components. 

Now it’s time to introduce another popular AMP plugin: the AMP for WP plugin.

AMP for WP plugin page in WordPress plugin repository

After installing and activating the plugin, you’ll need to navigate through its settings and activate the AMP for your pages and, if you want it, for your homepage:

Setting up the AMP for WP plugin

If you keep these settings, your pages will convert to AMP in a new url. If your page has this URL:

The AMP version of your page URL will be as follows:

After setting up the plugin, navigate to your pages and make sure the “Show AMP for Current Page” is set to “Show”.

AMP ready WordPress website
Set the AMP version of the page

If your page was built using a  page builder, you will see that none of the visuals will show on your page. Notice how the tabs content changes after converting the page to AMP:

AMP ready WordPress website
AMP removes the visuals of the page and bans some functionalities

It’s important to mention that none of the texts in the AMP converted version above are clickable, so it’s of no use to us. Even if you install and activate the Elementor compatibility add on, it still won’t show your visuals. This is because these tabs are made via the Jet Tabs or Jet Elements plugin, both of which are part of the theme and are not AMP compatible. 

Ok, but what do we do now? 

Fortunately, there is an option that allows you to show different content on your AMP pages. It is only available if you use the AMP for WP plugin.

AMP ready WordPress website
Builder for AMP components on every page

Making the page via the AMP builder will let you use a better layout and visuals. After all, the AMP has some transitions supported and this builder is very useful for allowing alternative content for your AMP pages. Create the content you’d like and save the page. (Yes, the components are very limited, but that’s all we can do with AMP at the moment. Please note that AMP still comes with a lot of limitations). 

As a side note, it’s important to mention that you will lose your header and footer styles, as it uses a different theme for the mobile version of the website. The theme that it uses is very light and has a minimal style. However, you will find some customizing options on the plugin settings page.

AMP ready WordPress website
Header settings on the AMP for WP plugin

If you are running an e-commerce store and want an AMP website, you’ll need this extension (premium) to be able to show advanced product pages, carts or their components on your pages.

Here’s the  AMP version of my homepage after tweaking it a bit with the AMP builder and changing the mobile theme. All this was done via the AMP for WP plugin.

AMP ready WordPress website
AMP version of the page. The non AMP is using a Jupiter X template

Wrapping up

You need to know that the purpose of AMP is to load your pages INSTANTLY (not just faster, but instantly). In order to achieve this, you need to make a lot of sacrifices. You will have to change this mindset that a page works as long as it’s responsive, no matter what you put on it. If you want to have a successful AMP website, you’ll need to approach the concept of page load differently. Although Jupiter X is not a fully AMP ready theme, you can still make an AMP compatible website out of it using third party plugins, though it may take a bit of work. In this article, we reviewed the concept of AMP and covered methods for crafting and verifying an AMP-ready WordPress website. Feel free to share your thoughts in the comments below!


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

How to Manage Large-Scale WordPress Sites

manage large-scale WordPress sites featured

You probably know WordPress as a popular blogging platform, but only few are aware of the real possibilities and power that WordPress contains. The platform has tremendously improved over the past few years, and nowadays the number of large-scale WordPress-powered sites are increasing every day. 

As of March 2021, WordPress hosts 40% of all the websites on the web (you can see the official statistics here). That number was just 32% three years ago, and WordPress’ growth is showing no signs of slowing down. It’s extremely likely that we will see higher numbers in the coming years.

From large-scale blogs to multi-million dollar online shops, WordPress can power literally anything.

62% of the top 100 fastest growing companies in the US (Inc. 5000) use WordPress.

Nelio Software

Let’s take a look at a very brief list of well-known websites powered by WordPress from different categories:

There are so many more out there.

Before we go any further, let’s clarify what I mean by “large-scale” websites. We are not talking about large-scale bank transactions, SAAS services with millions of users, or telecom operators with huge databases. Rather, a large website could mean a big magazine website with hundreds of thousands of articles, or an online shop with tens of thousands of products and transactions. Scale refers not only to the amount of data, but also to traffic. To provide an example, a website with around 1 million weekly hits can be considered a large-scale WordPress website.You may be wondering if WordPress has any limitations in scaling or if the rules change when handling large scale websites. Let’s find out! In this article, we will cover the most important tips you need to manage large-scale WordPress websites.

Choosing the right hosting 

Hosting infrastructure probably plays the biggest role in the scaling of a WordPress site. Good hosting can greatly improve your site performance in many ways Hostings that place limits on server space use are not the best choice, as a simple traffic spike may cause your site to crash without warning. This is why you should choose the best hosting partner for your project.

There are many different hosting options out there for you to choose from, so let’s list the several types that can be used for large-scale projects. Please note that I will not cover shared hosting, as it’s not a great option for the purposes of this article.

VPS or virtual private server

VPS hosting can be used for middle- to large-scale projects. It’s a step ahead of shared hosting and dedicated WordPress hosting, as it provides a unique space for each project on the server and keeps your data separate from that of other users. However, while it’s a great choice in terms of customization options and storage space, VPS hosting can have issues dealing with high traffic levels and spikes. If you decide to go with VPS hosting, make sure it offers plenty of resources and options for scaling in case your site experiences increased demand.

Dedicated WordPress hosting

First and foremost, using this kind of hosting requires an advanced level of knowledge of server maintenance. This kind of hosting involves renting a server yourself, allowing you to have full root and admin access to anything and anywhere. While everything is under your control, sometimes this degree of control comes with a price: dedicated hosting is one of the most expensive hosting options. While it can be used for high levels of web traffic, it’s best for projects where you need complete control of the server and definitely requires technical expertise to maintain.

Cloud hosting

This kind of hosting involves several computers working together to provide cloud infrastructure. As the web project therefore runs on combined computing resources, this kind of hosting is very good for scaling your project. Cloud hosting allows you to increase the resources for your project with a single click. Plus, the website owner pays only for resources used and there is rarely a fixed price. With cloud hosting, resources are spread across many servers, meaning that project downtime is reduced to almost 0.

Managed hosting

This type of hosting does not rely on its own infrastructure, but instead offers hardware and software configuration, maintenance and technical support for third party large-scale hosting providers. This is basically a simplified version of dedicated hostings, but a properly configured server can handle high level traffic spikes. 

One important point when choosing your hosting partner is scalability. It’s unlikely that your project will see extremely heavy traffic all the time, but it should be able to handle heavy loads in the event of traffic spikes. 

In some cases, you’ll need more physical resources from your hosting to handle such traffic. Both CPU and RAM are crucial, and your server should be able to keep up with increased traffic and must provide enough hardware resources when needed. That’s the key to vertical scaling! 

In the instance that not enough physical resources are available to handle increased need, any type of server may end up bottlenecked. To prevent this, you’ll want to balance your increased traffic across multiple servers. This is what we mean when we refer to Horizontal Scaling! Good servers should be able to autoscale when needed by adding more web nodes.

Performance and optimization

It goes without saying that large-scale websites must be better optimized than casual blog sites. When it comes to large-scale website optimization, every little detail counts. There are several points that are especially important when working on optimization, so let’s review them.

Updated software is a must

We all know that WordPress is an open-source project with frequent updates. Every new update not only fixes previous problems but also provides new security solutions and optimized features. As a large-scale website owner, it’s your responsibility to always keep your project updated.

Background Processes optimization

There are a number of background tasks that operate behind the scenes in WordPress. If you run a large-scale website, then you will likely have to deal with even more background tasks at a larger scale Some examples include backups, various CronJob tasks like publishing posts, products, settings, Cron job for update verification, search engines trying to fetch new content from the site and much more. Some of these tasks have a minor impact but tasks like file backup may require lots of resources, so you should always distribute your server resources in a way that will not affect overall functionality.


CDN, or Content Delivery Network, is old news for web developers. The location of the web server may impact user experience. For example, if you have servers in Germany, your site will load faster for users in Germany than users in the USA. That’s where CDN comes into play‒‒it can fix this issue by holding static files of your website in a network of the servers around the globe. These static files include images, CSS and Javascript. This way, when visitors click to your website, they are loading files from the closest server to their location.

Always use themes optimized For speed

As mentioned before, every detail matters when it comes to the large-scale WordPress sites. That’s why you need to choose your theme carefully; while you may like stylish and modern-looking templates, if they are poorly coded they will end up slowing down your site. 

Best practice in this matter shows that it’s always better to use simple themes or niche-oriented themes instead of general themes that are bloated with thousands of functions you may not even use. You can always extend functionality of simple themes through using plugins or adding custom functions.

Choose faster‒and fewer‒plugins

As is the case with themes, you only need to use plugins that follow WordPress coding standards and offer regular updates and good support.

In terms of plugin quality, it’s worth it to mention that the amount of activated plugins you use is also important. It may seem rather basic, but the more plugins you have activated, the more server resources you are using and the slower your website will operate in the end, so it’s always important to limit the amount of plugins you use for your site. 

Avoid storing media files on WordPress

I’m sure you are aware that when you upload video onto a WP site, it is automatically displayed in a HTML5 player, but this may not be such a good idea.

Hosting audio and video files on your server will cost you bandwidth, as media files usually consume lots of bandwidth data, increasing your final invoice from the hosting company. These kinds of files also need more backup space, which means more hosting space. Plus, loading such files usually slows down your website. A good alternative is to try to host audio or video files on sites like Youtube, Vimeo or SoundCloud and use the Embed function to display them on your site.

manage large-scale WordPress sites

Managing your Cache

WordPress cache is a feature that stores data in temporary memory on the server in order to decrease the loading time of the content of your site. When it comes to large-scale websites, your web server may often struggle to deliver service to all users. This is where the caching feature works best; by preparing data for the users, a caching plugin will speed up your site between 2.5X to 5X.

A good caching solution is a must-have for your website, no matter whether it’s a large-scale project or a small blog site. There are a lot of good caching plugins available in the market, both free or premium options. They are easy to configure and you will notice a major improvement from the first activation. The most popular plugins for cachings are:

Also, many companies like Bluehost, Siteground, Cloudways and others have developed caching plugins specifically optimized for their server environment.

manage large-scale WordPress sites

Database optimization

Large-scale websites store and collect lots of Information in their database. Apart from important data, there is temporary data (logs, revisions, spam comments, trash, etc.) that is not necessary to store for extended periods and will regularly be cleared. A poorly optimized database becomes slow and unwieldy in size, which will accordingly increase the back-up size of your project.

Default and native database optimization can be done via PhpMyadmin by selecting all your tables and choosing “Optimize Table” from the dropdown list. This action will recreate selected tables and remove any excess local data utilized by that table.

There are other, more user-friendly methods to optimize your database utilizing WordPress plugins such as:

manage large-scale WordPress sites


Last but not least, security is one of the most important points for any large-scale website. Is WordPress secure? The answer to this question depends on you. If you use the right techniques to secure your WordPress website, then it will be secure. 

The WordPress core is very secure, as it’s reviewed regularly by hundreds of industry professionals and developers. However, there are still many factors that can negatively impact site security, such as outdated server software, poor server administration, outdated core, plugins and themes. Let’s dive into the key points on how to keep your site as secure as possible. Please note that it’s impossible to cover every security consideration in one article.

Keeping WordPress Updated

Notice that we’ve mentioned this point twice? Every update of the WordPress core brings new features and fixes bugs, but it also implements best practices for coding standards. It goes without saying that using the most updated software for your project is a must.

Passwords and User Permission

Stolen passwords and low user permission are the most common WP security flaws. For large scale projects, having a long and secure password is not up for discussion‒always use a strong password generator to create secure and unhackable passwords. This applies not only to the WordPress dashboard but to anything at all, from hosting accounts and database access to FTP details, custom email addresses and more. 

WordPress backup

Be ready for any situation with a solid plan B. Are you performing an important update? Create a backup beforehand. Are you installing an important plugin? Create a backup. Cleaning out your database? Create a backup. Are your files infected with a virus? Restoring the working version is the easiest and quickest solution. A good back-up plugin can save a ton of time and won’t affect visitor experience. .

WordPress security plugin

This kind of plugin is a must-have tool that can save your site from various attacks, and improves the overall security of your site, some of these plugins will have a firewall as well. Don’t work without this plugin.

Web application firewall (WAF)

WAFs block suspicious traffic and malicious software before it reaches your site. Consider using the web application firewall offered by Sucuri.

Use secure protocol SSL/HTTPS

These are encrypted data transfer protocols between your web site and the end user. This encryption makes it harder to mine your data or steal information. Nowadays, many hosting companies offer free SSL certificates in their hosting plans.

Limit Login Attempts

This is an easy and smart way to prevent hackers from accessing your WordPress dashboard. This method blocks potential hackers after several unsuccessful attempts. Login LockDown plugin is one of many free plugins for this purpose.

Two-Factor Authentication

This provides an extra layer of security by restricting access to the dashboard to those who are registered by the admin. Users who are not registered can only access the dashboard via their mobile phone or via extra security steps. Two Factor Authentication can be used for this security feature.

This list could go on for much longer, as security is a never ending process. To keep your site as secure as possible, do your best to stay up to date on the best practices for WordPress security.


I hope that, now that you’ve reached the end of the article, the issue of scalability is much clearer than before. You can scale your site as you see fit. While there are no real limits, you should adhere to best practices of large-scale WordPress site management whenever possible. The same goes for smaller blogs; use the best practices to provide the site experience you strive for. So, let’s recap the five best practices we discussed in this article:

  • Choose the right hosting method 
  • Maintain performance and optimization
  • Manage your cache with best practices
  • Prioritize database optimization and management
  • Secure your setup

There are many other things that should be considered when you manage large-scale WordPress sites. Website monitoring tools are a good example of a topic we did not cover in this article. Make sure any extra tools and instruments you opt for are already included in your hosting plan, as they will greatly improve the management of the whole project.

Do you have any questions? Don’t hesitate to click on the comment button below and we’ll be in touch with you!


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

Understanding WordPress Link Previews

WordPress Link Previews featured

The term “link preview” is pretty self-explanatory. When you share a link via a social media post or via channels like Slack, the automatically generated preview will show key bits of information about the link destination. This information usually includes a title, caption or description, and an image. However, each social media site collects this information differently from the destination site, so the final preview for the same link can differ between social media sites.

It’s important to recognize that link previews are the first line of interaction between your WordPress site and potential customers. In this blog post, we’ll walk you through some simple steps to optimize your WordPress link previews for popular sites like Facebook, Twitter and LinkedIn.

The Open Graph Protocol

Link previews are superior to plain URLs for a number of reasons: they present valuable contextual information about the site by adding an image, title and description. They also draw in web traffic by making the link more clickable.

The Open Graph protocol refers to the practice of describing a website by identifying its rich objects (such as images or audio files). Built by Facebook for social networks, OGP uses <meta> tags to achieve this. These tags help social media sites decide what key information to pull when generating link previews for your site. The most common meta tags include:

og:title: the title of your content.

og:type: the type of content, such as a video or web page.

og:image: the URL of the image used to represent your content.

og:url: the unique URL of your content that will be used as its permanent ID.

og:description: the description that summarizes your image.
Check out the following example from the official site. This chunk of code describes the movie “The Rock” on IMDB’s website:

If you look at the <meta> tags, you can see  that the website’s title is “The Rock”. The HTML also includes an image link and a URL leading to the same website.

OGP was initially designed specifically for Facebook, but many other web services now support it. Linkedin, Twitter and Pinterest are all social networks currently supporting  OGP.

It’s important to realize that OGP can also affect your SEO. That being said, there are plenty of reasons to care about link previews: they are a key tool for making sites more accessible by giving potential customers and subscribers a summary of a site’s content. 

Link preview editing in WordPress

You can edit your link previews via your WordPress website. To change key elements of your link previews, from featured image to text description, you don’t need to write a single line of code–you just need a plugin! The Yoast SEO plugin is a great option, as it allows you to preview what your text will look like.

This Yoast SEO article gives a detailed description of how to edit link previews.

Here are the steps for setting a general image when there isn’t one for your post or page: :

  • Go to SEO > Social in your WordPress backend
  • From there you can add all your social URLs for Google to track.
  • Next, you need to go to the Facebook tab, where you will be able to upload a default image for sharing your website on Facebook.
  • Save your settings.

Let’s say you’ve added a new image, but the old one still shows up when you share your link via social media. Most social media sites, Facebook and Twitter included, cache link information for several days so that they don’t have to download new information everytime you add a link. This cached information is refreshed every few days automatically. Fortunately, there are tools that allow you to refresh your link immediately!

Best practices for nice link previews

When you share content via social media, it’s important to recognize that not all platforms are created equal. For Facebook link previews, it’s vital to optimize image size by

 Using images that are “at least 1080 pixels in width ensures the best display on high res devices” (Facebook for Developers). For the best looking Facebook link preview, your page images should be 600 x 600 pixels minimum.

Photo posts generate more likes and comments than text-based posts, so optimizing Facebook previews is very important for generating engagement. Taking the time to code your URLs helps to boost engagement and potential traffic  anytime someone shares your links on Facebook.

Facebook Link Debugger

Facebook Debugger is a helpful tool for refreshing posted links. It even allows you to see what information Facebook is collecting from each page on your site. After updating the featured image for a specific post or page, copy and paste your URL into the Repost Debugger search field and click on the “Debugging” button.

You’ll then be able to see all the information that Facebook collected from that page when it last scraped your page. If the updated image and preview text are not displaying, simply click the “Repeat Scraping” button once or twice to giveFacebook a chance to gather the new information.

WordPress Link Previews - facebook preview

The next time you share that URL on Facebook, the refreshed preview should display updated information..

LinkedIn Post Inspector

LinkedIn also has a tendency to show old data in a link preview. To fix this issue, you can use LinkedIn’s custom debugger, Post Inspector. Just like the Facebook Link Debugger, this tool refreshes the link preview. To use it, just paste your URL in the Post Inspector and click “Inspect”.

LinkedIn Debugger also tells you when the link was last scraped and includes other information about the URL and metadata gathered from the shared page.

WordPress Link Previews - post inspector

Twitter Cards Validator

Twitter supports link previews in a different way than either LinkedIn or Facebook. 

Twitter’s version of a link preview is called a Twitter Card. Only sites that have Twitter Card information available will display a preview when shared via Twitter.
However, you can also check your link preview on Twitter. Their debugger tool is called Cards Validator, which will show you how a link will look when you post it on your Twitter feed. Just need to fill in the URL and click on “Preview Card” to see it.

WordPress Link Previews - twitter card validator

To see the information Twitter has collected from that specific link, check the “Log” section. A “WARN” message in the Log section will also tell you if anything is wrong.

Common Questions

What do you do if a post that’s already been published to your Facebook Page is missing an image?

Sometimes the featured image will appear correctly in the link preview but doesn’t display later in your News Feed. Unfortunately, Facebook still has not developed a clear solution for this issue..

Instead, you’ll have to force Facebook to clear the cache usingFacebook Debugger (as described above), then perform the following steps: 

  • Go to Publishing Tools on your Facebook Page;
  • Under Published Posts, find your post and click on it;
  • Hit Refresh share attachment;
  • A pop-up window will open – if the new information is correct, click Save.

More common questions and their answers can be found on Facebook’s FAQ page.

Wrapping Up

We interact with and use link preview every day, but chances are you haven’t given them much thought. Fixing a link preview that’s showing old info may seem like a hassle, but thanks to powerful debuggers from social media sites like Twitter and Facebook, you can refresh cached data faster and post links with correct previews. Now that you know how to use Facebook Debugger, Twitter Card Validator and LinkedIn Post Inspector, you can start using WordPress link previews even more effectively than before.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

Top 5 Places to Store Jupiter X Form Submissions

store Jupiter X form submissions featured

One of the questions that always pops into my head when I want to make a form for a client is “Where should I store the data?” The answer to this question really depends on what the client needs. Sometimes, sending a copy of the data entry to a specific email is enough. However, there are other options that make it easier for them to access the data entries. There are plenty of form plugins available for your WordPress website, and each one has its own way to store data entries. In this article, however, I’m going to discuss 5 places you can use to store Jupiter X form submissions. 

For more information about Jupiter X Forms, please follow this link. For the purposes of this post, I assume that you already have a form like the one pictured below and that you have added your desired design customizations and fields.

Jupiter X Forms

To get started, add an action to the form and configure the action settings. The action will be triggered when the user clicks on the Submit button. Actions are beyond the scope of what I’m going to cover here, but you should be aware that knowing how to use them opens up almost unlimited possibilities. Let’s see how we can store our form entries based on the available actions. 


The simplest way to store form submissions is via email. Just add an Email action to Form Settings -> Add Action and configure your email settings.

Adding the Email action to a form

Once you add the Email action, the email settings section will appear below the settings section. Configure it and save the form. You can also set it to send a copy of the form to the person who submitted it by enabling the “Confirmation” option.

Configuring the Email action on a Jupiter X form

Now you will be able to use your form and submit entries. If you click on the Send button, you should see a green message confirming that the form was sent successfully .

The form was sent successfully.

You should then be able to see an email in your inbox that has all the form fields listed, plus some additional information such as date, time and page url.

Form entry results stored in a mailbox

Email is a good place to store form entries. It is secure, has search and archive capabilities, can filter out the incoming messages, and includes lots of features that can help you organize your form entries. These advantages make email the number 1 option for storing any form entry. 


Slack is one of the most popular team communication platforms out there. It comes with the ability to create a channel and store data on it. 

In order to add Slack integration to your form for data storage, simply add the Slack action to it.

Adding Slack integration to Jupiter X Forms

Right after adding the Slack option, you will see Slack settings appear below it. Open the link in the help tip to add the Slack integration app to your Slack account.

Open the Slack integration app settings

Add a username to your Slack integration on the resulting page and set the channel or person you want to send the form entry to.

Customizing the Slack integration app with Jupiter X forms

Then, save the settings, copy the Webhook URL and paste it to your form’s Slack integration field.

Setting up Slack integration

Enabling the Form Data option allows you to attach form fields to the message. Remember that, in order to organize multiple form entries in Slack, you can add a Pretext field to each of them and then use a hashtag or text to distinguish each form. You will receive a message like this on the channel you assigned the integration to:

Jupiter X Form entry on Slack

This is also a good way to get notifications when you need to act immediately after a form has been submitted. Please note that you can use multiple actions on your form. This means that you can combine Email and Slack integration with all other actions simultaneously. 


You may know of MailChimp as an emailing platform. While it’s primarily a mail and newsletter platform, it also has some key marketing features that will make your life easier when you want to collect information on a project or marketing campaign. Typically, you can create a campaign, add a couple of forms and place them on your website pages using the form-embed code. However, you are limited to the MailChimp form design. What if you want to do more than this? MailChimp offers its own API that allows you to integrate with different forms. We are lucky to already have MailChimp integration as part of Jupiter X Forms, so, with just a few clicks you can store your form entries in MailChimp as well. 

In order to add integration to your MailChimp account and store your form submissions, simply add the MailChimp action to your form.

Adding the MailChimp action to a Jupiter X Form

Once you’ve added the MailChimp action, MailChimp settings will appear below it.

MailChimp API key is required for integration

You will need an API key to integrate the form with your MailChimp. In order to get the API key, login to your Mailchimp account and navigate to Account -> Extras -> API Keys. Then, either create a new API key or use one of your old API keys if you already have some.

store Jupiter X form submissions
Adding a new API key to MailChimp

Copy the API key and paste it into the MailChimp API key field in your Jupiter X Form. It should then show the audiences and forms that you already have in your MailChimp account. 

Configure it to make sure the form submissions will be sent and store them within this list.

store Jupiter X form submissions - configure mailchimp
Configuring the MailChimp list

Add your field mappings and update the page. Now, when you submit an entry, it will be stored in your MailChimp as a new audience.

store Jupiter X form submissions
A new contact is added to the audience list in MailChimp after form submission

The good thing about storing data in MailChimp is that you can simply hand it to your marketing team and let them convert form submitters into real customers with the tools available for email marketing. 


Growmatik is a new marketing platform that combines all other marketing tools and services into one integrated solution. It allows you to segment your audiences, show popups, send customized emails and personalize websites for different users. Plus, it boasts many other useful features to measure the growth of your website, generate leads and convert them into paying customers.

store Jupiter X form submissions - growmatik
Growmatik website personalized by its own features showing user locations to them

The great thing about Growmatik is that, since it combines a variety of useful marketing features in one place, it will give you a better chance to convert the leads coming through your website into paying customers. 

We are lucky to have Growmatik integrated with Jupiter X Forms already, saving you the hassle of integrating it using its own API

In order to integrate your form with Growmatik, you’ll need to install and activate the Growmatik plugin first. Simply go to WordPress -> Plugins and add the Growmatik plugin via the WordPress plugin repository.

store Jupiter X form submissions - install growmatik
Installing the Growmatik plugin

After installing and activating the plugin, you’ll need to connect your website to the Growmatik platform.

store Jupiter X form submissions - connect growmatik
Connecting Growmatik to your website

If it’s the first time you’re integrating your website with Growmatik, you’ll need to add site descriptions to the page. Fill in the forms and click the Next button.

store Jupiter X form submissions - add website to growmatik
Adding your website to Growmatik

Once the site is integrated, you’ll have access to its dashboard via the Growmatik website:

store Jupiter X form submissions - growmatik dashboard
Growmatik dashboard

You will also notice that the Growmatik plugin status has changed to “Connected”. For more information on how to integrate your website with Growmatik, please read this article

Once you’ve integrated your website with Growmatik, you will see the Growmatik action among your Jupiter X Form actions.

store Jupiter X form submissions - add growmatik
Adding the Growmatik action to the Jupiter X Form settings

Add the Growmatik action and you’ll see the Growmatik settings below it right away. Name your form and add field mappings.

Configuring Growmatik integration with Jupiter X Forms

If you have any custom attribute that you want to show up here, you’ll first need to add a Custom Attribute to your Growmatik dashboard.

Adding a custom attribute to allow field mapping in different forms

All done! Save your page and submit a form entry to see the result. All form entries in Growmatik will be considered new “contacts” that you can turn into paying customers. In order to see the form entry, navigate to the “People” section. 

To filter through the results, click on the “Add Filter” button and choose Subscriptions -> Form. Choose the form you named in Jupiter X Forms to see the filtered results.

Filtering the results to show only form entries in the People section

You can see the results here. Now, save your segment, go to the automation section and convert these users into paying customers by sending marketing emails and showing them personalized content and products. 

Google Sheets

There is a way to integrate your forms with Google Sheets and store the data on it without writing a single line of code. Jupiter X Forms is capable of triggering a web hook and sending the data entries to that hook using the POST method. This gives you a great chance to integrate it with any other web service out there. 
Zapier is a service that acts as a hub for other services. It works like this: you first add a web hook from Zapier to the Webhook section of your form. Ten, as soon as someone submits the form, it will trigger Zapier. Whatever integration you made with Zapier will then operate. One of the possible integrations is Google Sheets, meaning that you can store your data on Google Sheets as well.

Adding a webhook action to Jupiter X Form

Log in to your Zapier account and make a new ZAP.

After that, search for Webhooks by Zapier. Add the ZAP and trigger the event with “Catch Hook”.

store Jupiter X form submissions

Continue to set up the trigger.

Copy the Custom Hook URL and paste it into the WebHook field of your Jupiter X form.

Update the page and return to the Zapier tab. Now you should test the web hook. Click on Test Trigger, submit a post entry on your website and click on Test the Trigger to ensure you receive the data.

Then, add an action to your web hook. Find the Google Sheets option and click on it.

store Jupiter X form submissions

Since we want to add a new row to the sheet with each form submission, click on “Create Spreadsheet Row” in the action event field.

Now you’ll need to sign into the Google account you’ll use to select your sheet. Grant access to Zapier to read and write data on your Google Drive.

Next, you’ll need to map the fields of your sheet with data entry fields. Then, click Continue.

Now test your action and turn on your ZAP.

store Jupiter X form submissions

All set! You should have the form entry in your Google Sheet, as shown in the image below:

store Jupiter X form submissions

Wrapping up

In this article, we reviewed 5 ways to store Jupiter X form submissions data. The best options are those that make it easy to access stored data and provide you with multiple ways to use that data. These 5 places are not the only options for storing data — you can also use other services such as ActiveCampaign while building a form in Jupiter X. Jupiter X also allows you to combine all of these methods if desired. Feel free to ask questions or make suggestions below in the comments section and make sure to subscribe to our newsletter for upcoming blog posts.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

Top 5 WordPress Hacks for Every Website in 2021

Often when you are setting up a WordPress website, you want to get the job done as quickly as possible. However, small issues always slow down your progress. It’s a real pain spending a lot of time fixing small details that you didn’t intend to happen. In this article, I’m going to cover 5 common issues with WordPress websites and introduce quick fixes that can truly speed up your web projects. We can call these “WordPress hacks”.

Using code snippets is always preferred for the sake of performance. However, if you’re looking for more functionality than simple hacks, it’s better to use plugins. Let’s see what hacks we can use to boost our WordPress projects!

Register users without emails

Let’s say  your client asked for a custom registration form that doesn’t require an email address. These days, there are many different authentication methods for login and registration, and these aren’t limited to just using emails. I.E. you made it possible to use SMS authentication for both registration and login. While email addresses are part of the core functionality of a WordPress website when dealing with users, what will happen if you don’t have an email field filled in your database? It’s simple! Your functionality will break down. For example, you can’t post a comment or use comment plugins such as wpDiscuz.

So what can we do? Fortunately, there are a couple of workarounds. First, you can find the code in the plugins that use emails and remove the email check fields. But wouldn’t it be easier to assign a random email address for your users while registering? You needn’t have an email field for this. Instead, you can assign a fake email address that you know does not exist and, by doing that, fix all possible conflicts with not having emails. Using the snippet below will assign a random email address to each user when they register. 

add_action("user_register", function ($user_id) {
    $user = get_userdata($user_id);
    if (empty($user->data->user_email)) {
        $args = array(
            "ID"         => $user->id,
            "user_email" => uniqid() . "",
        wp_update_user( $args );

Just add this snippet to your child theme’s functions.php or use it via your preferred PHP snippet plugin.

Change the post type slugs

Now let’s say you have a post type made in one of your plugins or your theme and you want the slug to be different. A good example of this is the Jupiter X portfolio post type. Instead of:

You want:

The process of doing this WordPress hack is already outlined here in this article. However, the quickest workaround is to add a snippet in your child theme’s functions.php and then re-save the permalink settings. The snippet is as follows:

add_filter( 'register_post_type_args', 'wpse247328_register_post_type_args', 10, 2 );
function wpse247328_register_post_type_args( $args, $post_type ) {

	if ( 'portfolio' === $post_type ) {
		$args['rewrite']['slug'] = 'projects';

	return $args;

It is also possible to achieve this using a third party plugin. However, loading a third party plugin just to change a slug may cause performance glitches and is best avoided if you care a lot about performance.

Remove version number from static resources

If you’ve checked your website performance via GTMetrix or any other scanner, you have probably noticed that even when you activate the browser caching and expiration of headers on static resources, some of the resources are not getting cached by the browser. This reduces the overall performance score of your website. This is actually intentional. WordPress adds a “ver=xxx” parameter to the end of the static resources to avoid caching. But this can cause performance problems as well. 

Fortunately, there are plenty of plugins that do remove the version number from the static resources. Some have this option included in their performance optimizations (mostly, caching plugins). However, it’s better to do this without using a plugin if you can, right? Using snippets always affects performance less than using a caching plugin.

WordPress hacks - Remove version number from static resources

The ver parameter at the end of static resources keeps the browser caching from working. 

In order to remove the query strings from the static resources, simply add this snippet to thefunctions.php of your child theme. 

function remove_ver_static_resources() {
   if(!is_admin()) {
       add_filter('script_loader_src', remove_query_strings, 15);
       add_filter('style_loader_src', remove_query_strings, 15);

function remove_query_strings($src){
   $output = preg_split("/(&ver|\?ver)/", $src);
   return $output[0];
add_action('init', remove_ver_static_resources);

Skip the cart and go to checkout after adding something to the basket

Sometimes, if you have a shop with only a few products in it, it’s easier for users to skip the cart page and directly navigate to checkout right after they add something to their cart. This would be considered a user experience hack in WooCommerce. This WordPress hack has two steps:
1 – Disable the redirect to cart page after adding something to the cart. 
2 – Add code snippets to your child theme. 

In order to disable the redirect to the cart page after adding something to the cart, you need to open the WooCommerce -> Settings -> Products -> General and uncheck the two options in front of “Add to cart behaviour”. Then, save the changes.

WordPress hacks - Skip the cart and go to checkout after adding something to the basket

After that, add this snippet to your child theme’s functions.php file:

add_filter('add_to_cart_redirect', 'cw_redirect_add_to_cart');
function cw_redirect_add_to_cart() {
    global $woocommerce;
    $cw_redirect_url_checkout = $woocommerce->cart->get_checkout_url();
    return $cw_redirect_url_checkout;

Now your customers will be redirected to the checkout page as soon as they add something to their carts. 

Change WordPress login URL (using a plugin)

This is one of the handiest and most used hacks for WordPress. Changing the login URL means plenty of security benefits for you. If you hide the door from hackers, they will have less of a chance to get through that door. By default, these URLs are the WordPress login addresses:

Although this is a useful hack, it’s highly recommended that you do it using a third party plugin because it is not a simple hack like the others mentioned above. In order to perform it, install any of these plugins and configure your login page address:

There are many more plugins that can perform this hack. However, if you only want to change the login URL, it’s recommended that you use a plugin that does just that. Multipurpose plugins can potentially cause overloads on your website. For this example I’m using the first plugin Change wp-admin login – By Nuno Morais Sarmento. Once you install this plugin, you just need to navigate to WordPress -> Settings -> Permalinks and provide the new login URL and redirect page in case someone tries to access your default login page:

Then, save the permalinks and exit.

I’m looking forward to hearing your comments and suggestions in the comments section below.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

How to Make Your WordPress Website GDPR-Compliant with Jupiter X

If you’ve spent some time on the World Wide Web lately, you’ve probably heard of GDPR. With data breaches becoming a more and more common occurrence, GDPR has become a real hot topic. Although the European Law passed relevant legislation back in 2018, the discussion around GDPR is still confusing. In this article, we’ll answer your questions about GDPR and how you can make your WordPress website GDPR-compliant with Jupiter X.

What does it mean to be GDPR-compliant and why should you care?

GDPR, short for General Data Protection Regulation, is one of the biggest changes in user data regulation law in recent years. Simply put, GDPR law regulates how the internet deals with user data, regardless of whether the website is public or private.  

This law was approved back in 2016 by the European Commission to protect the rights of all EU citizens (in 28 Member countries) by protecting their personal information. The rollout of this plan was scheduled for 2018 and it came into effect on 25 May 2018. While GDPR regulation was invented to protect EU citizens, it affects everyone on the web. How? Well, if your website is collecting data from EU visitors, your need to make your website GDPR compliant as well!

If you are interested in getting into the nitty-gritty, you can find all the details you need on this site.

How to make Jupiter X GDPR ready

As a website owner, you need to provide clear information about your data collection policies, what data you are collecting and how, as well as displaying an option for your visitors to opt out of data collection in order to make your WordPress website GDPR-compliant.

Now, let’s check what you need to know about GDPR when using our Jupiter X theme. First of all, our Jupiter X theme does not collect any information from visitors, not even personal information such as IP address or contact details. However, it’s important to recognize that some third-party solution providers like Google Fonts or Google Maps may do this.

Google Fonts

Jupiter X uses the Google Fonts feature to help you add different fonts to your website. If you are using this extension on your site, you will need to let your visitors know by displaying a notice via popup windows or any other clearly visible banner (don’t worry, we’ll walk you through how to do this!). If you are not using Google Fonts, feel free to disregard this part of the process.

How to make your WordPress website GDPR-compliant with Jupiter X - Google fonts

Google Maps

This extension, which appears as the Google Maps widget within the theme, also collects user information like IP address. Since IP address is treated as personal data, so to make your WordPress website GDPR-compliant you have to warn users about this if you are using Google Maps on your site.

How to make your WordPress website GDPR-compliant with Jupiter X - Google maps


Forms can also collect data from the users. If you have a contact form on your site (or any other kind of feedback form such as a subscription form, newsletter form, or any kind of survey), make sure you clearly outline what information you are collecting and why. 

A pro tip: you can use the Acceptance field at the bottom of the form to warn users about your data policy!

How to make your WordPress website GDPR-compliant with Jupiter X - forms

How can you inform users about GDPR policies? You may already know that showing different popups is a great way to do this. You can place your popup banner anywhere on your website, as long as it’s clearly visible for visitors. You can also use a popup window. The good news is that Jupiter X already has a quick and easy solution for this. JetPopup , a popular plugin already included in Jupiter X, can help you create all sorts of warning banners and popups for GDPR.


I hope this article has helped you fully understand what to consider when building your project using the Jupiter X theme. GDPR is a big deal, and it’s here to stay. To get an idea of how serious it is, check out this link regarding GDPR fines stats. With this in mind, it’s important to review our sites and make your WordPress website GDPR-compliant with Jupiter X.

One more thing: we are not lawyers, so this article is just a collection of tips on how to make your WordPress website GDPR-compliant with Jupiter X. For a complete walkthrough of all the details, we recommend contacting a GDPR consultant or lawyer to make sure your website is fully compliant from a legal perspective, especially if your business is operating in the EU.

If you still have some questions or if I missed something in this article, feel free drop your questions and comments below!


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

Why and How to Use Social Proof on Your WordPress Website

Social Proof on Your WordPress Website featured

This is a guest post contributed to Artbees Themes blog by Elisa Abbott.

Social proof is a psychological phenomenon that many businesses use to boost their sales. It serves as an additional confirmation for every potential buyer that a particular product or service deserves their attention. More precisely, it confirms the value and quality of a service or product.

The good news for businesses is that adding social proof on their WordPress website is not challenging. First of all, there are different types of social proof that they can add. Some examples include case studies, certifications, customer reviews, etc. Of course, the effectiveness of this marketing tool depends on the way businesses use it.

Many tools can help people add all forms of social proof to their website and make the entire process a lot easier.

What are these tools? In this article, you will find out all the ways to increase social proof on your WordPress website. Go on reading to learn the essential details that will help you increase your sales.

The Importance of Social Proof for Businesses

The first thing people look for when they land on a website is the features and benefits of a product. Of course, the product description for each item needs to be clear and engaging.

However, customers need one more piece of evidence that will convince them to take action. This is the moment when social proof becomes essential. First-time customers need to feel that they are not alone. A large group of previous customers raving about the benefits that a brand provides is sure to be a good sign for potential customers. They will get confirmation that people with the same problem found a solution here.

Companies, on the other hand, use social proof as an external confirmation of their quality and expertise. In that way, they aim to boost the reputation and convince potential customers that this company is the right choice. In this case, companies do not need to spend money and effort on direct promotions. Their satisfied customers will do the work for them.

Using the right method to deliver social proof to customers can be tricky. The good news is that businesses can use different channels. They can place customer reviews on the landing page of a WP website, somewhere across checkout pages, within their email campaigns, etc.

Entrepreneurs should know that social proof comes in different shapes and sizes. By knowing all of the possibilities, business owners will be able to determine the best one for their needs. Besides, they will also manage to determine the right place to share these external confirmations.

Types of Social Proof

Different types of social proof are effective for different purposes. Which one you use depends on your goals.

Customer Reviews

Social Proof on Your WordPress Website - customer reviews
Source: Bizzabo

The way Bizzabo did it can serve as an inspiration for many WordPress website owners. Bizzabo is an event software that helps planners and marketers boost the quality of the events they organize. Here, they used an entertaining background to make the customer reviews look interesting. Additionally, they shared the full names of the customers that are satisfied with the way the platform works. This helps first-time visitors recognize that these reviews come from “real people.” They will also get the necessary confirmation that the platform can address their needs as well.

Certifications and Licenses

A license is a piece of evidence that companies receive from third-party authorities. Depending on the industry they are working in, they will need to have a confirmation that everything they do is legitimate.

An excellent example of how licenses can boost the reputation of a business are companies that produce toys. We can use Lego as an example. They are proud that their product meets all the requirements of the US Consumer Product Safety Act and the EU Toy Safety Directive.

Parents would never allow their kids to play with toys that are made of materials that could potentially be harmful. Once they see the license, however, they have additional confirmation that Lego toys are completely safe. This type of social proof protects the reputation of Lego and boosts their sales.

Social Proof on Your WordPress Website - lego
Source: Lego

Reviews and Testimonials of Celebrities

Small businesses probably won’t have the opportunity to collaborate with celebrities. However, the solution to that problem is out there. Such companies can hire social media influencers. Logically, picking the right influencer is the main important point here. Brands should chase those that already interact with their target audience. After they have established a collaboration, they can also add a video or image of the influencer using their product.

The strongest brands in the world use the exact same tactics. A good example of that is the PUMA sneaker brand, which uses the influence that Selena Gomez has. The first thing people will see when they visit Puma’s website is Selena wearing Puma shoes.

Social Proof on Your WordPress Website - puma
Source: Puma

The same rule counts for individuals that plan to offer their services on a WordPress website. You can check out the example below and see how Kristi Hines did it. She asked some of the experts in the digital marketing niche to share their reviews of her work.


Case Studies

Customers come to your website because they are looking for a solution to their problem. As we’ve mentioned before, they need confirmation that your services or products can help them solve the problem they have. However, they also want to know how a strategy, tactic, or item has solved similar problems for others.

Case studies can confirm a couple of things. First of all, the customer will see what the entire process of reaching the goal looks like. He will also manage to see what the brand has achieved. Finally, case studies often serve as a marketing tool to talk about other brands or individuals they collaborate with. The way Lane Bryant did it is a perfect example for others to follow.

Of course, making the case study engaging and valuable is not an easy task. Entrepreneurs should also use different content writing strategies to make it more interesting. If they struggle to do that, they should work with paper writing websites to help them reach their goal. With the help of professionals, the quality of their case study will likely increase.

Tools to Add Social Proof to the WordPress Website

Adding social proof to a WordPress website does not require advanced coding skills. Instead, people should focus on using different tools that will make the entire process easier. Here are a couple tools that deserve special attention.



There are three reasons why WPfomify is a good tool for adding social proof to a WP website. Each time that someone purchases a product or signs up to the website, the plugin displays that notification on the homepage. This allows a business to benefit in three different ways.

First of all, their conversion rate will increase. Similarly, thanks to social proof on the website, their credibility and reputation will improve. Finally, both benefits will result in a bigger number of sales and increased revenue.


WordPress website owners can help people in a couple of different ways. First of all, TrustPulse helps website owners leverage social proof power. In this way, they will be able to improve conversion rates via their website. Thanks to its features, TrustPulse users can track all the signups, purchases, and other customer activities.

The best feature of all is the program’s smart targeting feature. Website owners can determine the time that they want to show the social proof on their own. They will also be able to see exactly who can see their social proof.

Final Thoughts

We have finally come to the end. WordPress owners should add social proof on their WordPress website for many reasons. It can increase the conversion rate and lead to a bigger number of sales.

Social proof is one of the most effective marketing tools of all. For every potential customer, there can be a valuable confirmation. They will see that your brand provided a solution to people that have had the same issue. Thanks to different tools, placing social proof on your WordPress website has never been easier. With a small dose of creativity, entrepreneurs can boost their reputation and impress their target audience.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

How to Convert Your Design to WordPress Using Jupiter X and Elementor

convert your design to WordPress featured

WordPress is one of the most popular CMS platforms, and using its Elementor page builder will allow you to create a fully functional website from PSD without any coding. It makes the process much easier! While there is no magic button to press to convert your design to WordPress, Elementor is very user-friendly. You’ll see how easy it is to recreate your PSD in no time.

Do you want to convert your PSD to WordPress, but aren’t sure how? In this article, I will show you how to convert your design to WordPress using Elementor and the Jupiter X theme, step by step.

Why Elementor is better with Jupiter X

Advanced Customization – Jupiter X offers different customizations, allowing you to easily style your pages by setting the typography and layout options in the Customizer, and much more

Pop-up Builder – Popups are very important in online marketing. Elementor Pro has this feature, but with Jupiter X you can avoid paying for the Pro license. Artbees has bundled in the JetPopup plugin so that you can create great popups with the free Elementor version. 

400+ Layouts – Both Elementor and Jupiter X provide a wide variety of layouts for your site. You’ll find them in the Elementor library and will be able to import these layouts as full pages or as sections. It will help you to create the site much faster, and you may find interesting layouts that you want to try.

Templates – Jupiter X provides a lot of demo templates that you can use. Find the ones that match your design and your site will be ready in no time. Just install a template and replace the content with yours. You’ll get a fully designed template!

Mobile Preview – In Elementor’s editor you can preview the pages on mobile and edit content instantly. The same preview is available in the Jupiter X Customizer so that you can modify styling and check immediately how it looks on mobile devices.

Email Integration – Jupiter X provides the option to integrate email with different email marketing tools like HubSpot and MailChimp.

Excellent Widgets – Elementor has its own widgets that help you make your pages functional. Jupiter X expands on this feature by additional widgets, such as the widgets from the bundled plugin JetElements, so you can have more fun.

One-time Payment –  With Jupiter X you pay only once and get full-time updates and additional features, in contrast with the subscription for Elementor Pro, which you need to renew each year. 

Selecting Design

Whether you create your design with Photoshop, Sketch or Adobe XD, it will be easy to convert it with Elementor. PSD is short for PhotoShop Design. It’s one of the most popular design tools used to create designs for WordPress sites.  There are a lot of readymade PSD designs that you can download directly from PSDHUB. This will save you time when creating a design. But, if you decided to create the design yourself, here are the factors you need to cover in your design:

  • Clean Layout: your design must be elegant. This will help you make a pixel perfect website.
  • Follow Direct Tasks: the design must clearly fit your site’s purpose. For example, you’ll probably want to use a hotel website PSD to create a hotel website. 
  • Complications: try to avoid complexity when choosing design. Often, the simpler it is, the better your website will turn out. 

The First Steps to Convert PSD To WordPress

WordPress is a very popular platform thanks to its ease of installation. The installation process is simple. So installing WordPress is the easy first step for converting your design to WordPress. If you need guidance throughout the process, WordPress support provides a detailed article on “How to install WordPress”. It should take less than five minutes of your time.

Once WordPress is installed, you should then proceed with the installation of the Jupiter X theme. The detailed process is described in the following Artbees article: “Getting Started with Jupiter X”.

The next step is to install the Elementor plugin. As it’s bundled with the theme, you can enable it by navigating to Jupiter X > Control Panel > Plugins. For more information, check out this article. Also you can install the JetElements plugin, which is also bundled with the theme to extend default Elementor functionality and provide users with more additional widgets.

The installation stage is completed. Now you’re ready to convert the PSD to WordPress using Elementor and Jupiter X.

Converting PSD To WordPress

Before starting to create new pages, you can look for ready-made templates in Jupiter X. Perhaps you’ll find the one that suits your design, making the conversion process much easier. Follow these steps to convert your design to WordPress:

Add a New Page

First you need to create a new page from the WordPress dashboard. On the top left side of the WordPress dashboard, click Pages > Add New. Then, click the “Edit with Elementor” button to enter the Elementor Page Builder. You will see an Elementor panel.

convert your design to WordPress - add new page

Build a Page From The PSD File

To build a page according to your design, you should consider three main things: Sections, Columns, and Widgets. Sections are the largest blocks, and can be divided into Columns. You can place Widgets inside Columns. 

Add Header And Footer

In Jupiter X, a header and footer can be created in Elementor as well as pages. You’ll need to create a Header template and assign it in Customizer > Header, as described in this article. The process is similar for the Footer template. Also, you’ll need to add a logo for your site. To learn how this can be done in Customizer, read more here.

Add Hero Section

Now, let’s convert the hero section. This is the first thing that your visitors see when they visit your site, so it’s the perfect place to make a great first impression. You can add a background image in the Section settings, then add columns with content and icons.

convert your design to WordPress - section background image

Add Inner Section With Columns

Using the Inner Section widget in Elementor, you can add background and text between two columns. For example, you can add some text and banner images within the section column.

convert your design to WordPress - inner section

Publish the Page

Once you are done building your page from the PSD, you can preview your work and then publish it. You can also edit a published page or save your work as a draft (it won’t be public until you finish the page and publish it).

Check Heading Structure

Heading tags are very important in web page content. When used correctly, they add semantic meaning, help with accessibility and can increase your search engine rankings.
The <h1> tag should be the main heading, which is followed by <h2>, <h3> and so on. The `<h1>` is usually the boldest one, whereas <h6> font size is the smallest.

Search engines scan your site for headings. Using H1-H6 tags shows them how different blocks of content are connected with each other. Google will try to use the content of your headings to understand what the page is about. If your headings effectively inform users as to what your page is about, they’ll help Google understand your content too, so your search engine rankings will increase.

Mind the Responsiveness

Making your site responsive on different devices is a very important step! Elementor provides the possibility to modify sections, widgets, columns for mobile, tablet and desktop layouts. You can set different margins and padding for mobile or tablet devices so your content looks clean on different devices. There is also a feature allowing you to hide/show some sections or widgets on mobile or desktop. It’s useful if you don’t want to show some large content on mobile.

Wrapping Up

In this article you saw that converting your design to WordPress is quite an easy process with few possible complications. I’m sure that once you try using Elementor and Jupiter X for this process, you’ll continue to work this way, as the steps described above will help you quickly convert your design into a stunning WordPress site.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

How to Use FileBird to Organize WordPress Media Library

organize WordPress media library featured

This is a guest post contributed to Artbees Themes blog by Thuy Nguyen from Ninja Team.

Why to organize WordPress media library?

WordPress media library is where you can find all of your documents and media uploads. It comes with a sort feature by file type and a month and year-based filter function. This is quite sufficient for personal bloggers.

However, if your blog is media heavy and it has to hold thousands of media files, it will take some time to find the files you are looking for. Or when you want to do a post revamp and delete the old files, the decluttering process is hard with this categorization way by default.

Therefore, organizing WordPress media library requires a category management of files. That is where FileBird comes in to help.

What is FileBird – WordPress Media Library Folders?

FileBird is a file manager plugin dedicated to WordPress media library. It adds an integrated folder tree on the left sidebar to help you drag and drop files into the folders easily.

This WP media folder plugin is loved by many photographers, fashion designers, and food bloggers, who are extensively using media content in their WordPress pages and posts. It works magic on WooCommerce, Elementor and all popular themes including Jupiter X.

In this article, I am going to show you how to organize WordPress media library with FileBird, keeping track of all those media uploads and displaying them in an impressive fashion blog in the shortest amount of time.

Create folders in WordPress media library

FileBird is a plug and play plugin, meaning it’s ready to use right after activating. Take a look at the FileBird folder tree and you will see everything is intuitive and easy to navigate, just like what you do on your computer.

It offers one-click to create a folder. So go ahead and click that button to create several main categories/parent folders such as Fashion, Collections, and Marketing.

This media folder area comes with a smart context menu, meaning you can right-click to interact with the folders. For instance, if you right-click on the folder Fashion, you have various options including:

  • New folder: to create a nested folder inside Fashion
  • Rename: to change the folder name
  • Cut and paste: to easily arrange folders
  • Delete: to delete a folder while keeping all those files in the All Files location
  • Download: to download a full folder with its files and folder structure in a ZIP file

Please note that the Download full folder feature is currently available only in FileBird premium version. It helps you download the original versions of media files, not bunky with different auto-generated image dimensions when you download them via FTP or Filester file manager plugin.

You can quickly try all of these options risk-free because it causes no loss at all. Even when you move files to a wrong folder, you can easily fix it by dragging and dropping it again to the destination folder. 

On top of that, FileBird does not change the permalinks to your media files so they won’t break or get damaged when you move the files around.

Upload files and folders to your media library

When editing pages or posts, you can also choose the specific folder to upload multiple files. This folder list drop-down in Add media makes it quick when you want to upload and categorize those files at the same time and with only one action. 

Small as it may seem, it is a big time saver when you have to manage multiple websites and publish a bunch of posts on a daily basis.

As for uploading folders, FileBird also keeps it down to the minimum effort. When you need to upload multiple folders with their contained files, you can bulk select those folders then drag and drop them into WordPress media library in a single blade. This action also keeps the same folder order and structure respectively, meaning you literally transfer the categorization system from your hard disk to WordPress.

If you have come this far, you might be already familiar with how FileBird drag and drop works. Depending on the requirements of your website, you may need to create 20+ folders for your media library. Keep in mind that the FileBird free version allows up to 10 folders. If you need more folders/categories, upgrading to the paid version is recommended.

Add image gallery and document gallery in Gutenberg

In this step, I will be showing you how to create an eye-catching gallery using Gutenberg block.

Create a smart image gallery

In order to showcase a collection of your fashion blog, you can easily find FileBird Gallery block > Select the collection folder from the folder list.

After choosing the desired folder, you can go ahead and tweak your gallery appearance with these options:

  • Column number: choose to show your gallery in 1-4 columns
  • Crop images: enable it to get your gallery well-aligned
  • Caption: display caption below each image
  • Delete: dismiss specific images that you don’t want to show in this gallery
organize WordPress media library - gutenberg image gallery

Create a document gallery

Sometimes you may want to share advanced files other than basic image formats. If so, you have reached the right place.

With the help of FileBird and a document gallery plugin, you can showcase your SVG, ZIP or other document files with good-looking auto-generated thumbnails.

FileBird supports Document gallery plugin’s shortcode to help you display a list of document files. You only need to fill the folder ID in the shortcode and embed it in any page or post.

organize WordPress media library - document gallery with shortcode

With user-friendly file thumbnails, your gallery will be much more appealing to your visitors. On the front-end, your new document icons look like this. Here’s the outcome of my blog post on JupiterX theme.

organize WordPress media library - Jupiter X document gallery

Best practices when using FileBird media manager

There are some hidden features of FileBird that you will find useful:

  • Collapse the folder tree sidebar to easily hide it
  • Resize the folder tree sidebar to get an overview of all folders with their full names
  • Press ESC to exit the bulk select mode (applicable to both files and folders)
  • Use advanced sort features to clean up the outdated files
  • Set startup folder

For the start-up folder, you have two options to choose from. 

  1. Select a specific folder: this is fixed and you will reach this folder first whenever you access WordPress media library
  2. Select previous folder: this is dynamic and, as a result, you can come back to the most recently opened folder to quickly continue the task you have been on
organize WordPress media library - set startup folder

FileBird is an easy-to-use plugin for all bloggers using WordPress as their favorite platform. I hope this tutorial has helped you learn how to use FileBird to organize your WordPress media library and make the most out of it.

Choosing FileBird – WordPress media library folders helps extend the functionality of your blog back-end so that it can handle thousands of media files.

How do you navigate images and media on your website? Don’t forget to share your thoughts and experience in the comment box below.


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

How to Fix the Issue of WordPress Not Sending Emails

WordPress not sending emails featured

One of the most common and important issues for sites is WordPress not sending emails. This is due to a number of reasons – usually, the issue is server-side or your email settings are incorrect. If you don’t pay attention to these issues, you could lose your customer’s trust. For example, if you run an online store, such as a WooCommerce website, this issue could prevent your customers from getting a receipt. If you don’t fix the issue, many customers may leave your site.

In this article, we’ll discuss how to identify the reasons for WordPress not sending emails to you or your clients, and how to fix it. 

What Kind of Emails Does WordPress Send?

Before investigating this issue, you need to know what kinds of emails WordPress sends from your site. This could depend on the plugins you use. For example, WooCommerce creates its own transactional emails for orders, new accounts, refunds, and more.

Here are the main emails that your WordPress site may send:

  • Password reset emails – a user receives this email upon requesting a new password.
  • New user email – when a new user is registered, a notification email will be sent to the site admin.
  • Activate account – this is a verification email sent to a user who has signed up for an account.
  • WooCommerce emails – these  include a number of different emails: new order notifications, order update emails (order received, shipped, etc) and others. 
  • Newsletter emails – if you use a newsletter plugin and opt to send via your host, your email newsletters could be affected by WordPress email sending issues.
  • Contact form emails – this is the entire submission. An email should be delivered when information is submitted  via a contact form.

Why WordPress Isn’t Sending Emails

The main reason for WordPress not sending emails is that the PHP Mail function is disabled on the hosting provider’s server. When WordPress wants to send emails, it calls on your hosting provider’s email server using the PHP Mail function, but if this function is disabled, your requests to send emails will not even get to the mail server. If this is the case, you need to contact your web host support and ask them to check if the mail function is enabled on the server.

Another reason may be bad server reputation. If your site is located on shared hosting, you use the same set of mailing IPs to send emails as every other user on the same server. All these emails may be recognized as spam emails and will end up being blacklisted, so your WordPress emails won’t be sent.

How to Test your Mail Server

To be able to fix this problem, the best way is to test your mail server. How can you do this? Here is a simple “Check Email” plugin that can help you.After downloading, installing and activating, go to the “Check & Log Email” menu and click on “Status”. Input your email address in the “send a test email” field and click the “Send test email” button.

After sending the test email you will see the following message:

Once you receive this message, check your email. Don’t forget to check the “Spam” folder as well. 

Once you have checked your mail server and are sure that your WordPress can send an email, you can investigate the issue further and check your contact form settings. If you use a custom plugin for the contact form, it’s better to contact the support team for this plugin.

How to Stop WordPress Emails Going to Spam

If the emails are delivered but appear in the Spam folder instead of Inbox, this Artbees article will be helpful for you, as it provides 10 tips to avoid the spam filter.

How to Configure the Form to Correctly Send Emails

If you tested the mail server and it’s configured properly but you still are having problems with WordPress not sending emails, it could mean you need to check the settings for the form.

Let’s take a look at the most usable contact plugin – Contact Form 7

If the emails can’t be delivered with this plugin, the best solution is to change the address that emails are being sent from.

In your WordPress admin, go to Contact > Contact Forms.

WordPress not sending emails - contact forms

Select the form you’ve created and open the “Mail” tab.

Note that the From field should have the admin email address of your site, not the email address input in the form.

WordPress not sending emails - contact form 7

You can use it in the Reply to field but not the From field.

Make sure the From and To fields use different email addresses. 

Don’t forget to save your changes. Then, test the contact form by submitting it yourself.

If you use the Jupiter X theme, you might create the form using the JX Form element in the Elementor editor. We’ve already covered how to configure it so that emails are sent successfully in this article.

How to Set Up SMTP to Send Emails

If you tested the mail server with the “Check Email” plugin and emails aren’t being sent from your site at all, then you need to use a third-party SMTP provider and link it with your site.

SMTP stands for Simple Mail Transfer Protocol. SMTP uses proper authentication allowing for  high email deliverability. If your server isn’t configured to send emails, SMTP will make it possible.

There are different SMTP providers you can choose from. Some are free, so you don’t need to spend any money; you’ll just need some time for configuration.

To set it up, take a look at our article on how to configure SMTP plugin with WordPress and check out this one on how to register for an SMTP service.

Wrapping Up

Sometimes, you may encounter the issue of WordPress not sending emails to you or your customers, and it may be tricky to find out why. But you already know that the most common reasons for this can be because emails are going to spam, because your server isn’t configured correctly to send emails, or because the settings in your contact form need modification.

Once you follow the instructions above to identify the reason, you’ll be able to get your email system working properly in no time!


Subscribe to Artbees Themes Blog for the best WordPress tips and insights.

Implementing a Multi-Channel Approach to Recover Abandoned WooCommerce Carts

recover abandoned WooCommerce carts featured

It’s no secret that one of the biggest hassles for e-commerce shops and marketers is the issue of abandoned carts. In fact, nearly 70% of all shoppers online will abandon their carts without purchasing anything. This is frustrating considering that you spent resources (namely time and money) coming up with strategies and campaigns to grab onto and maintain new leads for them to abandon their carts. And what’s more is that even when they’ve been interested enough to look at your website and add your products to their cart, there’s still more to be done!

There are a couple of reasons as to why a potential customer would abandon their cart and never return. These are:

There are too many competitors.
It could be the case that numerous products similar to yours can be found online. Keep in mind that once your lead Googles a product, a competitor could be tracking that lead to send them ads along their customer journey. In other words, your potential customer could easily become sidetracked with another viable option. And the crazy part is that this can happen seconds before they were about to buy something from you.

People have short attention spans.
These days, it’s often quite difficult to hold people’s attention for long online. While they may need to have quite a few reasons to reach a decision, it doesn’t take much for them to change their mind. They could leave their cart abandoned with the intention of coming back later or to look into alternatives.

In this post, we’ll take a close look at why traditional ways to recover abandoned WooCommerce carts are no longer effective and how you can recapture their attention.

Reasons your follow-up attempts are ineffective

There might be several reasons as to why your campaign to follow up with cart abandoners in WooCommerce fails – however, by far, the most vital factors are reach and engagement. What does this mean? Simply that your campaign hasn’t reached your cart abandoner or it’s not engaging enough for them to return to your site to complete their purchase. Let’s look at why this might be.

Your campaign is not all-encompassing

One vital aspect missed by many campaigns to recover abandoned WooCommerce carts is the fact that online shoppers are unable to pay attention for very long. In other words, they get easily distracted. Just think about it: they are inundated with similar emails that you’re sending out and visit multiple sites and online shops on a daily basis. Simply sending one follow-up email upon exiting your store is not enough.

What we mean to say by this is: your campaign to follow-up with them should include their email as well as through main touchpoints in their customer journey, including your website, popups and social media.

Your campaign is not customized

By far, the most cost-efficient and effective way to capture someone’s attention is through personalization. When people see a personalized message conveyed to them, they feel acknowledged, which increases the chance that they’ll take action or respond.

But let’s first get one thing straight: personalization is much more than simply displaying the customer’s name in your message. It’s also about showing them offers and incentives tailored to their preferences.

What this means is that a cart abandoner is more likely to pass over a generic campaign and pay attention to personalized outreach.

Let’s take a closer look into some methods that you can use to tackle the obstacles in follow-up campaigns to recover abandoned WooCommerce carts.

1-   Use a comprehensive, multi-channel approach

As mentioned earlier, your follow-up campaign should not be something you do only once but should be an ongoing effort as part of a wider multi-channel campaign. Doing so will create a seamless, tailored customer journey, which will boost your reach probability and appeal to your target audience. So what does this look like? Your cart abandoner will get both a follow-up email as well as see the items that they abandoned in their cart while on your homepage (or any other major touchpoint such as the products page).

To take it one step further, you can show them relevant pop-ups with exclusive deals as they navigate your website so that they’ll be incentivized to finalize their transaction. On top of this, you can make use of remarketing ads on Google or social media to serve as a reminder of their abandoned carts.

To go about doing this, your best bet is to find a cross-channeling marketing tool such as  Growmatik. This will enable you to link all your segments from various touchpoints and provide consistent marketing messages on multiple channels, including your website and email. Let’s now go into more detail about each aspect of building up your multi-channel follow-up campaign.

Sending emails 

By far, emails are the most prevalent way of reaching out to follow up with cart abandoners. It’s also a crucial part of our multi-channel campaign. In Growmatik:

  • Navigate to the Automation page.
  • If you’d like to reach new users who have not yet bought anything, then make a rule in the Leads column. If you’d like to reach out to existing customers, then make a rule in the Customers column.
  • Assign the condition as User Behavior > Abandoned Cart and the action as Send Email. Click on the Create Email button.
  • In the window that pops up, select the Abandoned Cart template. Enter a name of your choice and click on Customize.
  • When you get to the email builder, tailor your template to your preferences. You can make use of features such as dynamic keywords, product elements (like abandoned items) and coupons to customize your email.
  • Hit Save & Exit.
  • In the Automation page, hit the Create Rule button.

And this is the first aspect of your follow-up campaign. After doing this, every WooCommerce cart abandoner will receive this follow-up email after abandoning a cart on your site.

Customizing the homepage

As you might have guessed, the next touchpoint that should be addressed is your website. This means that we’ll need to personalize that cart abandoner’s experience on your site. To go about this in Growmatik:

  • Head to the Automation page and in the Leads or Customers column, make the following rule.
  • Assign the condition as User Behavior > Abandoned Cart and the action as Personalize Page. Choose a webpage and hit the Save button. You can then select the homepage or any other page that you think is important (such as the products page)
  • In the personalizer window that pops up, you can personalize the page by editing the content or creating new content by hitting the + button. After you’re finished, hit Save & Exit.
  • When on the Automation page, hit the Create Rule button.

And, with this, concludes the second part of our follow-up campaign. This means that every person who abandons their cart on your site will be able to see a tailor-made version of your page.

Displaying a popup

Another way to help recover abandoned WooCommerce carts is through showing popups on or throughout our website. Doing this is two-fold: to remind visitors they’ve abandoned their cart and to encourage them to complete their purchase. To get this done in Growmatik:

  • Navigate to the Automation page, and in the Leads or Customers column, make the following rule.
  • Assign the condition as User Behavior > Abandoned Cart and the action as Show Popup. Choose the amount of time that you want to have passed before showing the popup. Then hit the Create Popup button.
  • In the window that comes up, select the Cart Abandonment template. Enter a name of your choice and hit Customize.
  • When in the email builder, tailor your template to your liking. You can make use of certain features like dynamic keywords, product elements (such as abandoned items) and coupons, which will allow you to personalize your popup even more.
  • Hit Save & Exit.
  • Once on the Automation page, hit the Create Rule button.
recover abandoned WooCommerce carts - display popup

Once you’re finished, everyone who abandons their cart on your site will be able to see a popup personalized to them.

Retargeting ads outside your site

After the follow-up email and personalizing your website, the next and third touchpoint is external websites as well as social media (such as Instagram and Facebook). This is something that’s overlooked by tons of e-commerce sites when it comes to recovering abandoned WooCommerce carts. By integrating your site with Facebook Pixel and Google ads, you’ll be able to follow your cart abandoners and target personalized ads on other websites as well as on Instagram and Facebook. The articles listed below offers some excellent tips to get this done:

(Growmatik is slated to add social media automations soon in 2021).

2- Customize your follow-up message

So far in this article we covered the technical aspects of crafting a follow-up campaign that can be sent through multiple channels to recover abandoned WooCommerce carts. However, we haven’t yet covered the personalized content of such marketing messages.

We want to go beyond the simple ‘Hey [first name] Have you forgotten something?!’ message. Adding more personalization will make the cart abandoner feel special and unique.

Keep in mind that you might be limited as to what you can personalize depending on your marketing automation tool of choice. In Growmatik, we’re going to include three items to our campaign to reach out to cart abandoners.

Add abandoned items to marketing messages

When you’re composing email templates and page content for the cart abandoner, you should include the items that the user has in their cart. While you might not think this is important, it can have quite the impact in assisting the abandoner to remember which products they left behind. This is because online shoppers are likely to have visited several sites and get similar emails all the time.

recover abandoned WooCommerce carts - abandoned items

While in the Growmatik email builder and page personalizer tools, add the Product element, which you’ll see in the toolbox. Then go to the product settings panel and assign the content as Abandoned Cart Products. By doing this, Growmatik will show the abandoned items to the cart abandoner.

Use an exclusive coupon to incentive the abandoner

It’s often the case that users who abandon their carts haven’t forgotten they’ve done so – meaning that a “did you forget” message will not resonate with them. It could be that they found something better (finger’s crossed that’s not the case!) or they’re uncertain about which business to buy from. The competition between you and someone else might be quite close that you don’t need to do much to get ahead.

One great proven solution is through exclusive offers. This can be a great way to sway users to make a last-minute decision. This is because a discount coupon plays into cognitive biases like FOMO, hyperbolic discounting, loss aversion and reciprocity. All these biases could help persuade a cart abandoner to finalize their purchase.

To make sure that this is effective, it’s important to state inside your pitch that the coupon on offer is exclusive to that particular user.

Growmatik allows you to include such coupons in not only emails but also popups. To do this, all you have to do is add the Coupon element to your template and input your discount preferences like the amount of the discount. Growmatik will then do its job and automatically show the coupons to the cart abandoner.

Add social proof

An important factor that might make a user hesitant in the customer journey is when they question whether or not the product they are considering is quality. More often than not, they’ll need something more than simply a flashy presentation or slick sales pitch. Instead, they’ll need to see proof of what others have thought about after buying and using your product. We call this social proof.

Your campaign to follow up with cart abandoners will likely necessitate social proof to ease any concerns about your product. What this looks like in reality could range be a couple of excellent reviews from previous customers or testimonials from influencers. To boost the review’s authenticity, you could even include the name and picture of the reviews (with permission, of course).

recover abandoned WooCommerce carts - social proof

You can include even more info on your website so that you can boost user confidence, such as real-time data about when exactly a product was sold, how many items are left in stock as well as how many people are looking at a particular product. You can easily do all this with plugins like WPFomify.

Wrapping up

The communication you establish with a user throughout their customer journey can either be simplistic or sophisticated. The methods mentioned in this article can go a long way in helping you recover abandoned WooCommerce carts. However, keep in mind that these techniques might vary depending on your particular business, the market as well as your target audience. We recommend that you focus on your goals and set up the type of campaigns that will have the maximum reach and engagement. And this campaign should be both cross-channel and personalized.