The Review

Contents

1. Does the theme support Cyrillic or Georgian characters?

2. How to I add new child pages to auto hub form?

3. How do I disable the Gutenberg editor?

4. How do I change options on custom page templates and custom post types?

5. How do I create BuddyPress groups?

6. I can see shortcodes in my excerpts - how do I use custom excerpts?

7. How I do I disable the WordPress Admin Bar for users?

8. I can't change the site title and description on the homepage?

9. How do I add hub categories to my navigation menus?

10. WPBakery Page Builder says I need to activate a license?

11. CDN images are not working on my site?

12. What size are the page header images?

13. Why am I not receiving emails?

14. What SEO plugin do you recommend?

15. How do I stop my site reloading the fonts with a preload effect?

16. How do I show the back to top button on mobile/tablet devices?

17. Why did you remove this theme?

18. I cannot see the icons on my site?

19. I get the following error message "select2-css CDN unavailable. Some controls may not render properly."

20. I can't update the theme - it says update failed?

21. How do I add comments to the parent hub page?

22. I can't save the Theme Options page?

23. Can a user delete their user rating?

24. My plugins are automatically inserting content into my sidebar and footer?

25. How do I insert advertisements on my site?

26. Increasing PHP Maximum Execution Time

27. Updating your PHP version

28. My translations are no longer working since the theme update?

29. Increasing PHP Memory Limit

30. I get a Page Not Found error when I click on links?

31. How do I add/edit/remove theme options?

32. I can't login because it says "Incorrect Captcha"?

33. Increasing WordPress Upload Limit

34. How do I allow users to register to my site?

35. How do I redirect back to the pages list after using the Automatic Hub Creation form?

36. How can I remove the decimal points from my ratings?

37. How do I change the page the login form redirects to?

38. How do I add a Favicon to my site?

39. Why do I not see the featured images on my site?

40. How do I open the affiliate button link in a new window?

41. How do I add/remove breadcrumbs?

42. How do I manually add a review score that is not an average of the multi criteria?

43. How do I modify the BuddyPress registration fields/template?

44. I cannot see any related posts?

45. Increasing Maximum Input Vars

46. How do I enable comments on pages?

47. How do I add new fonts to theme options backend?

48. How do I convert a lot of my posts to review pages?

49. How do I add a custom captcha to the pop login and register forms?

50. My site is running slow, what can I do?

51. It says the theme is broken or missing a style sheet?

52. How do I display the hub title in the browser on child pages when using WordPress SEO plugin?

53. How do I resize Google ads on my site?

54. How do I change the order of the hub tabs?

55. How do users add avatars (images) to their profiles?

56. How do I find my ThemeForest Item Purchase Code?

57. I cannot import the demo data

58. Why do I have so many different versions of the same image on my server?

59. How do I change the user rating and/or number of votes?

60. How do I add a BuddyPress cover image?

61. Increasing Post Maximum Size

62. Why can't I see ratings in my Google search results?

63. How do I add/remove widgets and Visual Composer elements to the sidebar?

64. I cannot access the drop down menu links on Android devices?

65. I can't login after clicking my BuddyPress email activation link?

66. Pagination is not working on my posts

67. Limit the number of cores using MAGICK_THREAD_LIMIT

68. Finding the cause of your issue(s)

1. Does the theme support Cyrillic or Georgian characters?

There may be some conflicts with the custom post type options and these characters. To fix this use the https://wordpress.org/plugins/cyr3lat/ plugin to convert Cyrillic and Georgian characters to Latin.

2. How to I add new child pages to auto hub form?

If you want to create a new child page that is automatically added to your hubs when using the auto hub form read below. I'm going to use the example of creating a custom Preview child page for your hub.

1) Create a new page template for your preview pages (for example just copy the review-template.php file and rename it to preview-template.php). Open the file and at the top of the page change the template name to whatever you want to call it e.g. Preview. You may want to modify the look of this template afterwards.

2) In your child functions.php file add:

// Add preview checkbox option to automatic hub creation form
function ghostpool_custom_hub_options() {
    echo __( 'Preview', 'gauge' ) . ' <input type="checkbox" name="gp_preview_page" id="gp-preview-page" value="1" checked="checked" />';
}
// Generate preview page from automatic hub creation form
function ghostpool_custom_hub_page( $gp_hub_page_id, $gp_hub_title_prefix ) {
    // Preview Page
    if ( isset( $_POST['gp_preview_page'] ) && $_POST['gp_preview_page'] == '1' ) {
        $gp_new_page_title = $gp_hub_title_prefix . esc_html__( 'Preview', 'gauge' );
        $gp_new_page_content = '';
        $gp_new_page = array(
            'post_type'      => 'page',
            'post_date'      => esc_attr( $_POST['ghostpool_date_time'] ),
            'post_date_gmt'  => esc_attr( $_POST['ghostpool_date_time'] ),
            'post_title'     => esc_attr( $gp_new_page_title ),
            'post_name'      => sanitize_title( $gp_hub_url_prefix . '-' . esc_html__( 'preview', 'gauge' ) ),
            'post_content'   => $gp_new_page_content,
            'post_status'    => 'publish',
            'comment_status' => 'closed',
            'post_parent'    => $gp_hub_page_id
        );
        $gp_new_page_id = wp_insert_post( $gp_new_page );
        update_post_meta( $gp_new_page_id, '_wp_page_template', 'preview-template.php' );            
        update_post_meta( $gp_new_page_id, '_gp_hub_page', 'enabled' );
    }    
}
// Preview page hub tab options
function ghostpool_add_custom_hub_tabs( $value, $type, $gp_hub_tab, $tab_id ) {
    if ( $tab_id == 1 ) {
        if ( $type == 'page_template' ) {
            return 'preview-template.php'; // template file name
        }
        if ( $type == 'tab' ) {
            return 'enabled'; // change to 'disabled' to hide this page from the hub tabs
        }
        if ( $type == 'tab_title' ) {
            return 'Preview'; // the title shown in the hub tabs
        }
        if ( $type == 'tab_link' ) {
            return ''; // custom link
        }
        if ( $type == 'tab_target' ) {
            return ''; // custom link target
        }
    }
}
add_filter( 'ghostpool_custom_hub_tabs', 'ghostpool_add_custom_hub_tabs', 10, 4 );



3. How do I disable the Gutenberg editor?

WordPress 5.0 introduced a new page editor called Gutenberg. Please ensure you have updated to the latest version of the theme and WPBakery Page Builder. To do this refer to your theme documentation.

Once you've done this you should see a blue WPBakery Page Builder button at the very top of your page. Clicking this disables the Gutenberg editor for this page so you can use the WPB page builder. 

You can disable the Gutenberg editor permanently from WPBakery Page Builder > General Settings > Disable Gutenberg Editor


4. How do I change options on custom page templates and custom post types?

To change the options on custom page templates and custom post types in your child theme's functions.php file add:

function ghostpool_custom_init_variables() {
    // Custom page template
    if ( is_page_template( 'custom-template.php' ) ) {
        $GLOBALS['ghostpool_title'] = 'gp-large-page-header';
        $GLOBALS['ghostpool_layout'] =  'gp-no-sidebar';
        $GLOBALS['ghostpool_sidebar'] = 'gp-standard-sidebar';
    }
    // Custom post type
    if ( is_singular( 'custom_post_type' ) ) {
        $GLOBALS['ghostpool_title'] = 'gp-large-page-header';
        $GLOBALS['ghostpool_layout'] =  'gp-no-sidebar';
        $GLOBALS['ghostpool_sidebar'] = 'gp-standard-sidebar';
    }
    // Attachment page
    if ( is_attachment() ) {
        $GLOBALS['ghostpool_title'] = 'gp-large-page-header';
        $GLOBALS['ghostpool_layout'] =  'gp-no-sidebar';
        $GLOBALS['ghostpool_sidebar'] = 'gp-standard-sidebar';
    }
}

Some of the option names may vary from theme to theme. You can view all the available options and the correct names in lib/inc/init-variables.php.


5. How do I create BuddyPress groups?

I'm not sure why I get this question so often as creating groups has nothing to do with the theme, it's part of the BuddyPress plugin. However since I'm always asked please check the following:

1) Go to Settings > BuddyPress and under the Components tab make sure User Groups is enabled.

2) Go to Settings > BuddyPress and under the Pages tab make sure a page is selected from the User Groups drop down menu.

3) To add a link to this page go to Appearance > Menus and add this page to one of your menus.

4) If you can't create user groups from the frontend, go to Settings > BuddyPress and under the Settings tab enable Group Creation if you want to allow all users to create groups. If you still can't create groups deactivate all plugins (except BuddyPress) to see if this resolves the issue. If it does, reactivate the plugins one by one to fix the problem plugin.

If no plugin is causing the issue activate the Twenty Seventeen theme, if this doesn't resolve the issue, the theme is not causing this problem and you will need to contact BuddyPress support who will be able help you.


6. I can see shortcodes in my excerpts - how do I use custom excerpts?

Excerpts do not support shortcodes or HTML, they just display unformatted text. By default excerpts will strip all the HTML tags but you'll see raw shortcodes so you'll need to use custom excerpts to remove these. To do this edit the desired post or page, click the Screen Options button in the top right corner and check Excerpt. Now scroll down to Excerpt panel to add your custom excerpt.

7. How I do I disable the WordPress Admin Bar for users?

WordPress is adding the admin bar to your website, not the theme. You can use the following plugin to disable the admin bar: https://en-gb.wordpress.org/plugins/hide-admin-bar/

If you're using BuddyPress go to Settings > BuddyPress > Options and disable the Toolbar option.

8. I can't change the site title and description on the homepage?

If you're using the homepage imported from the demo data and have Yoast SEO activated then the site title is being pulled from this homepage. Edit the page, scroll down to the Yoast SEO panel and edit the Site Title field.

9. How do I add hub categories to my navigation menus?

Go to Appearance -> Menus and in the top-right corner click the Screen Options button and check the Hub Categories option. You will now be able to add hub categories to your menus.

10. WPBakery Page Builder says I need to activate a license?

The full version of WPBakery Page Builder (previously known as Visual Composer) comes with this theme. You do not need to activate a license to use it.

Free updates for the plugin will be included whenever the theme itself is updated. So after updating the theme you will see a notice at the top of your backend pages to update the WPBakery Page Builder if necessary.

You only need a license for two reasons:

1) You want to receive automatic plugin updates directly from the WPBakery developers rather than waiting for them to be included in a theme update.

2) You want to access the Template Library for additional page builder templates.

To get a license you need to purchase the plugin yourself.


11. CDN images are not working on my site?

The theme uses the Aqua Resizer script to resize/crop images to the selected size, this script only accepts images hosted on the same server as the site so CDN images will not work.

In order to support CDN images you will need to disable the cropping functionality. This is not an elegant solution as this will mean the full size images are loaded in all cases but at least your images will be working. To do this copy the following function to your child theme's functions.php file:

Replace "http://cdnurl.com/wp-content/uploads" with your CDN uploads directory.

class Aq_Exception extends Exception {}
class Aq_Resize
{
    /**
     * The singleton instance
     */
    static private $instance = null;
    /**
     * Should an Aq_Exception be thrown on error?
     * If false (default), then the error will just be logged.
     */
    public $throwOnError = false;
    /**
     * No initialization allowed
     */
    private function __construct() {}
    /**
     * No cloning allowed
     */
    private function __clone() {}
    /**
     * For your custom default usage you may want to initialize an Aq_Resize object by yourself and then have own defaults
     */
    static public function getInstance() {
        if(self::$instance == null) {
            self::$instance = new self;
        }
        return self::$instance;
    }
    /**
     * Run, forest.
     */
    public function process( $url, $width = null, $height = null, $crop = null, $single = true, $upscale = false ) {
        try {
            // Validate inputs.
            if (!$url)
                throw new Aq_Exception('$url parameter is required');
            if (!$width && !$height)
                throw new Aq_Exception('$width and $height parameter are required'); // MODIFIED
            // Caipt'n, ready to hook.
            if ( true === $upscale ) add_filter( 'image_resize_dimensions', array($this, 'aq_upscale'), 10, 6 );
            // Define upload path & dir.
            $upload_info = wp_upload_dir();
            $upload_dir = $upload_info['basedir'];
            $upload_url = 'http://cdnurl.com/wp-content/uploads';
            
            $http_prefix = "http://";
            $https_prefix = "https://";
            $relative_prefix = "//"; // The protocol-relative URL
            
            /* if the $url scheme differs from $upload_url scheme, make them match 
               if the schemes differe, images don't show up. */
            if(!strncmp($url,$https_prefix,strlen($https_prefix))){ //if url begins with https:// make $upload_url begin with https:// as well
                $upload_url = str_replace($http_prefix,$https_prefix,$upload_url);
            }
            elseif(!strncmp($url,$http_prefix,strlen($http_prefix))){ //if url begins with http:// make $upload_url begin with http:// as well
                $upload_url = str_replace($https_prefix,$http_prefix,$upload_url);      
            }
            elseif(!strncmp($url,$relative_prefix,strlen($relative_prefix))){ //if url begins with // make $upload_url begin with // as well
                $upload_url = str_replace(array( 0 => "$http_prefix", 1 => "$https_prefix"),$relative_prefix,$upload_url);
            }
            
            // Check if $img_url is local.
            if ( false === strpos( $url, $upload_url ) )
                throw new Aq_Exception('Image must be local: ' . $url);
            // Define path of image.
            $rel_path = str_replace( $upload_url, '', $url );
            $img_path = $upload_dir . $rel_path;
            // Check if img path exists, and is an image indeed.
            if ( ! file_exists( $img_path ) or ! getimagesize( $img_path ) )
                throw new Aq_Exception('Image file does not exist (or is not an image): ' . $img_path);
            // Get image info.
            $info = pathinfo( $img_path );
            $ext = $info['extension'];
            list( $orig_w, $orig_h ) = getimagesize( $img_path );
            // Get image size after cropping.
            $dims = image_resize_dimensions( $orig_w, $orig_h, $width, $height, $crop );
            $dst_w = $dims[4];
            $dst_h = $dims[5];
            // Return the original image only if it exactly fits the needed measures.
            if ( ! $dims && ( ( ( null === $height && $orig_w == $width ) xor ( null === $width && $orig_h == $height ) ) xor ( $height == $orig_h && $width == $orig_w ) ) ) {
                $img_url = $url;
                $dst_w = $orig_w;
                $dst_h = $orig_h;
            } else {
                // Use this to check if cropped image already exists, so we can return that instead.
                $suffix = "{$dst_w}x{$dst_h}";
                $dst_rel_path = str_replace( '.' . $ext, '', $rel_path );
                $destfilename = "{$upload_dir}{$dst_rel_path}-{$suffix}.{$ext}";
                if ( ! $dims || ( true == $crop && false == $upscale && ( $dst_w < $width || $dst_h < $height ) ) ) {
                    // Can't resize, so return false saying that the action to do could not be processed as planned.
                    //throw new Aq_Exception('Unable to resize image because image_resize_dimensions() failed');
                    $img_url = $url; // MODIFIED
                }
                // Else check if cache exists.
                elseif ( file_exists( $destfilename ) && getimagesize( $destfilename ) ) {
                    $img_url = "{$upload_url}{$dst_rel_path}.{$ext}";
                }
                // Else, we resize the image and return the new resized image url.
                else {
                    $editor = wp_get_image_editor( $img_path );
                    if ( is_wp_error( $editor ) || is_wp_error( $editor->resize( $width, $height, $crop ) ) ) {
                        throw new Aq_Exception('Unable to get WP_Image_Editor: ' . 
                                               $editor->get_error_message() . ' (is GD or ImageMagick installed?)');
                    }
                    $resized_file = $editor->save();
                    if ( ! is_wp_error( $resized_file ) ) {
                        $resized_rel_path = str_replace( $upload_dir, '', $resized_file['path'] );
                        $img_url = $upload_url . $resized_rel_path;
                    } else {
                        throw new Aq_Exception('Unable to save resized image file: ' . $editor->get_error_message());
                    }
                }
            }
            // Okay, leave the ship.
            if ( true === $upscale ) remove_filter( 'image_resize_dimensions', array( $this, 'aq_upscale' ) );
            // Return the output.
            if ( $single ) {
                // str return.
                $image = $url;
            } else {
                // array return.
                $image = array (
                    0 => $url,
                    1 => $dst_w,
                    2 => $dst_h
                );
            }
            return $image;
        }
        catch (Aq_Exception $ex) {
            error_log('Aq_Resize.process() error: ' . $ex->getMessage());
            if ($this->throwOnError) {
                // Bubble up exception.
                throw $ex;
            }
            else {
                // Return false, so that this patch is backwards-compatible.
                return false;
            }
        }
    }
    /**
     * Callback to overwrite WP computing of thumbnail measures
     */
    function aq_upscale( $default, $orig_w, $orig_h, $dest_w, $dest_h, $crop ) {
        if ( ! $crop ) return null; // Let the wordpress default function handle this.
        // Here is the point we allow to use larger image size than the original one.
        $aspect_ratio = $orig_w / $orig_h;
        $new_w = $dest_w;
        $new_h = $dest_h;
        if ( ! $new_w ) {
            $new_w = intval( $new_h * $aspect_ratio );
        }
        if ( ! $new_h ) {
            $new_h = intval( $new_w / $aspect_ratio );
        }
        $size_ratio = max( $new_w / $orig_w, $new_h / $orig_h );
        $crop_w = round( $new_w / $size_ratio );
        $crop_h = round( $new_h / $size_ratio );
        $s_x = floor( ( $orig_w - $crop_w ) / 2 );
        $s_y = floor( ( $orig_h - $crop_h ) / 2 );
        return array( 0, 0, (int) $s_x, (int) $s_y, (int) $new_w, (int) $new_h, (int) $crop_w, (int) $crop_h );
    }
}

12. What size are the page header images?

The page header image is a background image which is not a fixed width. If you are using the full width page header format then the image width will depend on the size of the browser window. I would suggest using an image of the size 1170px x466px.

13. Why am I not receiving emails?

This is unlikely to be a theme issue and it is most likely server or plugin related. 

To test this, activate the default Twenty Twenty-One theme (don't worry this won't affect your site content). If the issues still occur this means the theme is not causing the issue. Make sure whatever plugin you're using is set up correctly and that you have no typos in your email address.

If your server does not allow emails to be sent out try using the following plugin: 

https://en-gb.wordpress.org/plugins/wp-mail-smtp/

For BuddyPress emails you will also need to add the following to your functions.php file:

add_filter( 'bp_email_use_wp_mail', '__return_true' );

14. What SEO plugin do you recommend?

All my themes work well with "Yoast SEO" WordPress plugin: https://wordpress.org/plugins/wordpress-seo/

15. How do I stop my site reloading the fonts with a preload effect?

This is known as async typography. To remove this preloading, in your child functions.php file add:

function ghostpool_custom_async_typography() {    
    return false;
}   
add_filter( 'ghostpool_async_typography', 'ghostpool_custom_async_typography' );

16. How do I show the back to top button on mobile/tablet devices?

Go to Theme Options > Styling and in the CSS Code box add :

@media only screen and (max-width: 1023px) {
    .gp-theme #gp-to-top {
    display: block !important;
    opacity: 0.7 !important;
    }
}

17. Why did you remove this theme?

This theme has been retired and is no longer for sale. If you have an active support license you can still receive support, but you will not be able to renew your support license once it expires.

The reason the theme has been retired is because the ThemeForest sales model has opted for users to pay for support licenses rather than a yearly theme license (like most WordPress theme companies do), this means the sales do not cover the costs of continued development. 

I know this can be frustrating if you have a site using this theme, but this is the same with any theme or product. For example, when you buy an iPhone, after a few years, Apple will discontinue making that product and stop offering support for it so they can focus on their newer products. 

When you buy a theme in particular, you're not buying unlimited updates and life long support, you're buying the product you see there and then and always assume that it can be removed from sale at any time.



What do I do now? 

So if you're using this theme on your website and don't know what to do, here's my recommendations:

The theme itself should be fully compatible with future WordPress updates. Very rarely do minor updates cause theme issues and in most cases major WordPress updates should be fine to. So you should be able to continue to use the theme without any problems for years to come. 

If you do run into compatibility issues or bugs with the theme and no longer have a support license you will need to look for a developer who can fix these issues. I refer people to my developers, OurWebMedia, who you can contact here.

If you're about to use the theme and not sure whether to do so, if you're willing to pay for a developer to help you with any issues then go ahead and use it. Otherwise I would recommend using another theme.

The Review theme is fully compatible with the Gauge and Huber themes that I sell, but these may also be discontinued shortly. However I am working on a new review theme which will have all the features of The Review theme, but may not be fully compatible with it, so you existing reviews may not work with the new theme. This theme will likely to be released within 4-6 months. So you have the option of waiting until this theme is released and using this instead.




I want to continue to use the theme, but need the latest verison?

If you didn't download the latest version before the theme was removed, you can contact me at here (make sure you're logged into the account that purchased the theme) and I'll give you the latest version of the theme.



Can I get a refund?

If you bought the theme within the 6 months I can issue you with a refund. To request a refund please click here.

18. I cannot see the icons on my site?

This is probably because of a permission issues with the font used to display the icons. Using an FTP client set lib/fonts/ and lib/fonts/fontawesome/ permissions to 755 and the font file permissions to 644.

19. I get the following error message "select2-css CDN unavailable. Some controls may not render properly."

The Redux theme options framework loads some files from an external CDN server rather than loading them from your own server to improve the page load speed. If the CDN server goes down and you will receive this error but it usually fixes itself very quickly. If the error message does not go away then your server may not allow CDN files to be loaded. If this is the case ask your host to enable this, but if they can't you will need to host the files yourself.

To do this download the following plugin at https://github.com/reduxframework/redux-vendor-support/archive/master.zip and install and active it on your site.

Now open lib/framework/theme-config.php and find:

'use_cdn'              => true,

Replace with:

'use_cdn'              => false,

20. I can't update the theme - it says update failed?

You must now use the Envato Market WordPress plugin to update the theme. When you do, sometimes you may see an update failed message. To fix this try the following:

1) Firstly, try clicking the update link again, sometimes it doesn't work first time around.

2) If this doesn't work, activate another theme so this theme becomes deactivated and then try updating the theme.

2) If this doesn't work, check your token has the correct permissions by going to Envato Market > Settings and clicking the Test API Connection button. If you get an error, create a new token. 

3 If it still doesn't work it's possible Envato's API is down and you will need to try again later.

4) If things still don't work, don't worry, just download the theme update your ThemeForest Downloads page, locate the theme, click the green Download button and select the Installable WordPress file only option. Now go to Appearance > Themes and activate another theme so you can deactivate and delete this theme. Finally click the Add New and upload the zip file you just downloaded and activate the theme.

21. How do I add comments to the parent hub page?

Copy hub-template.php and to your child theme and find:

</article>

Above this add:

<?php comments_template(); ?>

Now go a hub page, edit it and click the Screen Options button in the top right corner of the page and make sure the Discussions option is checked. Finally scroll down to the Discussion panel and check the Allow comments option.


22. I can't save the Theme Options page?

This error occurs because your server limits the amount of data that can be saved at one time. There are two ways to increase this limit:

1) Edit your php.ini file and increase the max_input_vars function to around 3000 e.g.

max_input_vars = 3000;

2) Alternatively edit your .htaccess file (in the root of your WordPress installation) and add:

php_value max_input_vars 3000

If you're not able to do either of these please ask your webhost to do this for you.

23. Can a user delete their user rating?

The theme does not support this feature by default so you'll need to installed the User Meta Manager plugin. Once you have installed and activated the plugin go to Users > User Meta Manager, find the desired user, click Delete Meta and delete the _gp_rated_*, gp_current_position_* and _gp_user_rating_* meta data for that user. The user will also need to delete their cookies for the site so they can vote again.

24. My plugins are automatically inserting content into my sidebar and footer?

This is happening because you have enabled Visual Composer support via the Visual Sidebars Editor plugin, which allows you to insert Visual Composer elements in your sidebar and footer areas. If you don't need to display Visual Composer elements here go to Appearance > Sidebars Editor select the desired sidebars and click the green "Override widgets" button so it turns grey.

 

If you do need to add Visual Composer elements to your sidebar and footer areas you will need to edit the plugin that you are using. 

In the plugin files you need to find the name of the function being used for the_content filter e.g.

add_filter( 'the_content', array( $this, 'custom_function_name' ) );

In this case it is "custom_function_name". Now search for the corresponding function e.g.

function custom_function_name( $content ) {
    if ( is_singular() ) {
        $new_content = '<p>This is added to the bottom of all post and page content, as well as custom post types.</p>';
        $content .= $new_content;    
    }    
    return $content;
}

You need to add an additional check called in_the_loop() so the content is only loaded in the main loop and not the sidebars and footer e.g.

function custom_function_name( $content ) {
    if ( is_singular() && in_the_loop() ) {
        $new_content = '<p>This is added to the bottom of all post and page content, as well as custom post types.</p>';
        $content .= $new_content;    
    }    
    return $content;
}

I suggest speaking with the plugin developers and asking them to make this a permanent change to their plugin as this is a common issue between plugins and themes as discussed at https://pippinsplugins.com/playing-nice-with-the-content-filter/

25. How do I insert advertisements on my site?

To insert advertisements in the header and footer go to the Theme Options page of your theme and locate the header and footer content options (not available on all themes).

To insert advertisements in your sidebar go to Appearance > Widgets and add your ad or image code into the Text Widget.

To insert advertisements within the page content go to Appearance > Sidebars Editor and insert your ad or image code into the Raw JS Visual Composer element (not available on all themes).

You can also use a variety of ad plugins to insert advertisements within your posts/page. The plugin "Wp-Insert" has been tested with this theme.


26. Increasing PHP Maximum Execution Time

To increase the PHP Maximum Execution Time do the following:

Method 1: Editing .htaccess File Manually

Step 1: Locate the .htaccess file inside the root of your WordPress installation (located in the same folder as your /wp-content/ and /wp-admin/ directories) using an FTP client or file manager in your web hosting control panel (if you can’t find it see why you can’t find the .htaccess file and how to find it or if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in your .htaccess file:

php_value max_execution_time 180

Step 3: Now save the file.

Note: If you still get the error, try increasing the value to 600.

Method 2: Using A Plugin

Step 1: If you're not able to edit .htaccess file manually, then you can install and activate the WP Maximum Execution Time Exceeded plugin. That’s all. The plugin works out of the box and increases the maximum execution time to 300 seconds.

27. Updating your PHP version

The theme requires at least PHP 7.3 or above because this is what WordPress itself recommends.

Updating Your PHP Version

In most cases you cannot update the PHP version yourself and need to contact your host about this. The upgrade process is easy and should be something your host can do for you without impacting your website or charging you a fee. Here's an email you can send to your hosting company:

Dear host,

I'm running a site on one of your servers and WordPress has listed PHP 7.2 as the recommended version on their requirements page: https://wordpress.org/about/requirements/

Can you please let me know if my hosting supports PHP 7.2 or higher and how I can upgrade?

Looking forward to your reply.

VPS Server

If you have a VPS server, see How to upgrade from PHP 5.

My Host Doesn't Support PHP 5.6

If your host doesn't support PHP 5.6 or higher, you will need to find a host that does. We recommend DreamHost which supports PHP 5.6 or higher. If you contact another host, be sure to ask them which PHP version your website will run on before purchasing.

28. My translations are no longer working since the theme update?

Sorry for the inconvenience, Envato has asked me to move certain features to the theme plugin. This means all the theme options and custom Visual Composer elements have been moved the theme plugin. You can now translate all the text relating to these items from the themename-plugin.pot translation file as explained in the help file:

Socialize: http://ghostpool.com/help/socialize/help.html#61

The Review: http://ghostpool.com/help/gauge/help.html#71

Gauge: http://ghostpool.com/help/thereview/help.html#71

Vivacity: http://ghostpool.com/help/socihttp://ghostpool.com/help/vivacity/help.html#61lize/help.html#61

29. Increasing PHP Memory Limit

To increase the PHP Memory Limit do the following:

Method 1: Increasing Memory Limit In wp-config.php File

Step 1: Locate the wp-config.php file inside the root of your WordPress installation (located in the same folder as your /wp-content/ and /wp-admin/ directories) using an FTP client or file manager in your web hosting control panel (if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in your wp-config.php file just before the line that says “That’s all, stop editing! Happy blogging.”:

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

Step 3: Now save the file.

Note: If this solution does not work then this means your web hosting service provider does not allow WordPress to increase PHP memory limit. You will need to ask your web host to increase this limit for you.


Method 2: Increasing Memory Limit In php.in File

Step 1: Locate the php.ini file inside the /wp-admin directory using an FTP client or file manager in your web hosting control panel (if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in  your .php.ini file:

memory_limit 256MB;

Method 3: Increasing Memory Limit In .htaccess File

Step 1: Locate the .htaccess file inside the root of your WordPress installation (located in the same folder as your /wp-content/ and /wp-admin/ directories) using an FTP client or file manager in your web hosting control panel (if you can’t find it see why you can’t find the .htaccess file and how to find it or if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in your .htaccess file:

php_value memory_limit 256M

Step 3: Now save the file.

Note: If you encounter any errors while trying to set the memory limit using these two methods then it means your hosting provider has locked this setting and you will have to contact them to increase this limit.


30. I get a Page Not Found error when I click on links?

Sometimes your server rewrite rules need flushing. To do this go to Settings -> Permalinks and save the page.

In some cases you may need to change the permalink structure. To do this in the Custom Structure field add the following:

/%category%/%postname%/

Now save the page.

31. How do I add/edit/remove theme options?

There are two types of theme options. You have the global theme options on the Theme Options page and you have the individual options on individual pages.

Global Theme Options

This theme uses the Redux framework for the options interface. Redux provide documentation on adding, editing and removing options or sections here: https://docs.reduxframework.com/core/redux-api/

Adding A Section

Add the following to your child theme's functions.php file:

$opt_name = 'option_name'; // Change this value to the option name, you can find this in functions.php e.g. $gp = get_option( 'option_name' );
$section = array(
    'title'  => 'New Section',
    'id'     => 'new-section',
    'desc'   => '',
    'icon'   => 'el el-home', 
    'fields' => array(
        array(
            'id'       => 'opt-text-example',
            'type'     => 'text',
            'title'    => 'Text Field',
            'subtitle' => 'Subtitle',
            'desc'     => 'Field Description',
            'default'  => 'Default Text',
        ),  
        array(
            'id'       => 'opt-select-example',
            'type'     => 'select',
            'title'    => 'Dropdown Field',
            'subtitle' => 'Subtitle',
            'desc'     => 'Field Description',
            'options'  => array(
                'one' => 'One',
                'two' => 'Two',
                'Three' => 'Three',
            ),
            'default' => 'one',
        ), 
 
    )
);
Redux::setSection( $opt_name, $section );

Replacing $opt_name with the theme's option name - you can find this in functions.php e.g. $gp = get_option( 'option_name' ); where 'option_name' is the the value to use.

To call your custom options in your theme you can use:

$opt_name['opt-text-example'];

Again replacing $opt_name with the theme's option name and replacing 'opt-text-example' with the option ID.

Removing A Section

Add the following to your child theme's functions.php file:

Redux::removeSection( $opt_name, $id, $all_fields );

Replacing $opt_name with the theme's option name and $id with the ID of the option you want to remove. You will find all the option IDs in wp-content/plugins/THEME-plugin/inc/theme-config.php.

You can find a full list of all the ways you can edit the theme options at https://docs.reduxframework.com/core/redux-api/


Individual Page Options

Adding A Section

In this example we're going to add a new options panel to individual pages. Add the following to your child theme's functions.php file:

function ghostpool_redux_metabox_options( $metaboxes ) {
    
    $new_options = array();
    $new_options[] = array(
    
        'fields' => array( 
            array(
                'id'    => 'opt-text-example',
                'type'  => 'text',
                'title' => 'Text Field',
                'desc'  => 'field Description',
            ),
            
            array(
                'id'       => 'opt-select-example',
                'type'     => 'select',
                'title'    => 'Dropdown Field',
                'subtitle' => 'Subtitle',
                'desc'     => 'Field Description',
                'options'  => array(
                    'one' => 'One',
                    'two' => 'Two',
                    'Three' => 'Three',
                ),
                'default' => 'one',
            ),             
                     
        ),        
    );
    $metaboxes[] = array(
        'id' => 'new-options',
        'title' => 'New Options',
        'post_types' => array( 'page' ),
        'position' => 'normal',
        'priority' => 'high',
        'sections' => $new_options,
    );
    return $metaboxes;
}
add_filter( 'gp_redux_metabox_options', 'ghostpool_redux_metabox_options', 2 );

Replacing $new_options and 'new-options' with unique names.

You can add multiple post types to 'post_types' option including your custom post types e.g..

'post_types' => array( 'page', 'post', 'custom_post_type' ),

To call your custom options in your theme you can use:

<?php echo redux_post_meta( 'opt_name', get_the_ID(), 'opt-text-example' ); ?>

Replacing 'opt_name' with the theme's option names and 'opt-text-example' with option ID.

If "redux_post_meta" does not work try this instead:

<?php echo get_post_meta( get_the_ID(), 'opt-text-example', true ); ?>

Editing/Removing A Section

In this example we're going to edit the slide page options by removing several options. Add the following to your child theme's functions.php:

function ghostpool_redux_metabox_options( $metaboxes ) {
    
    $slide_options = array();
    $slide_options[] = array(
        'fields' => array( 
            array(
                'id'    => 'slide_caption_title',
                'type'  => 'text',
                'title' => 'Caption Title',
                'desc'  => 'The caption title for the slide.',
            ),    
                     
        ),        
    );
    $metaboxes[] = array(
        'id' => 'slide-options',
        'title' => 'Slide Options',
        'post_types' => array( 'gp_slide' ),
        'position' => 'normal',
        'priority' => 'high',
        'sections' => $slide_options,
    );
    return $metaboxes;
}
add_filter( 'gp_redux_metabox_options', 'ghostpool_redux_metabox_options', 2 );

Taxonomy Options

Adding An Option

In this example we're going to add a new option to post and portfolio category pages. Add the following to your child theme's functions.php file:

function ghostpool_custom_category_options( $gp_options ) {
    $gp_options[] = array( 
        'id'      => 'custom-option',
        'name'    => 'Custom Option',
        'desc'    => 'Custom option description.',
        'type'    => 'select',
        'tax'     => array( 'category', 'gp_portfolios' ),
        'options' => array(
            'option-1' => 'Option 1', 
            'option-2' => 'Option 2',
        ),
        'default' => 'option-1',
    );
            
    return $gp_options;
    
}
add_filter( 'gp_custom_category_options', 'ghostpool_custom_category_options' );

You can specify what taxonomies your options are shown on by changing the 'tax' option  e.g.

'tax' => array( 'category', 'post_tag', 'gp_portfolios', 'gp_hubs', 'gp_videos' ),

32. I can't login because it says "Incorrect Captcha"?

This is because you have activated the Google Captcha plugin but not set it up. If you don't want to use a captcha on the login form, go to Plugins > Installed Plugins and deactivated the Google Captcha plugin. 

If you do want to use this plugin, you'll need to set it up. Go to Google Captcha > Settings and click the Get the API Keys link to generate a site and secret key which you need to add to the plugin.

33. Increasing WordPress Upload Limit

To increase the WordPress Upload Limit do the following:

Step 1: Locate the php.ini file inside the wp-admin directory (if you’re not sure how to do this, ignore the steps below and contact your webhost who can do this for you).

Step 2: Find the following line in your php.ini file:

upload_max_filesize

Step 3: Increase the value to 64MB or higher and save the file.

Step 4: If you still have issues, look for this file in your root directory and make the same changes.

34. How do I allow users to register to my site?

This is a general WordPress option that can be found under Settings -> General -> Anyone can register.

If you're using BuddyPress the register page should have been created automatically. If it has not, create a new page called "Register" and publish it. Now go to Settings -> BuddyPress -> Pages and select this page from the Registration dropdown menu. Now you can link to this page in your menus from Appearance > Menus.

35. How do I redirect back to the pages list after using the Automatic Hub Creation form?

Open lib/inc/auto-hub-pages.php and find:

wp_redirect( get_permalink( $hub_page_id ) );

Replace with:

wp_redirect( admin_url( '/edit.php?post_type=page' ) );

36. How can I remove the decimal points from my ratings?

To remove the decimal points from your ratings open lib/inc/ratings.php and find each occurrence of number_format and change the 1 within the brackets to 0, so for example this:

number_format( $GLOBALS['ghostpool_site_rating'], 1 ) 

Becomes:

number_format( $GLOBALS['ghostpool_site_rating'], 0 ) 

You will also need to make this change to The Review Plugin. The file is located at wp-content/plugins/the-review-plugin/shortcodes/gp_vc_hub_details.php.

Next open lib/scripts/user-ratings.js and find:

if ( ghostpool_rating.rating != '' ) {
    var score = ghostpool_rating.rating;
} else {
    var score = this.readCookie('ghostpool_rating_score_' + ghostpool_rating.post_id);
}

Replace with:

if ( ghostpool_rating.rating != '' ) {
    var score = Math.floor( ghostpool_rating.rating );
} else {
    var score = Math.floor( this.readCookie('ghostpool_rating_score_' + ghostpool_rating.post_id) );
}

Find

var score = Math.floor((((((offset / ghostpool_rating.rating_width) * 100) * ghostpool_rating.rating_number) / 100) * 10)) / 10;

Replace with:

var score = Math.floor((((offset / ghostpool_rating.rating_width) * 100) * ghostpool_rating.rating_number) / 100);

Find:

score = (Math.floor(((((((e.offsetX + 4) / ghostpool_rating.rating_width) * 100) * ghostpool_rating.rating_number) / 100) * 10)) / 10), 

Replace with:

score = (Math.floor((((e.offsetX + 4) / ghostpool_rating.rating_width) * 100) * ghostpool_rating.rating_number) / 100),

Find:

var offset = e.offsetX + 4;

Replace with:

var offset = ( Math.round( ( e.offsetX + 4 ) / 23.3 ) * 23.3 );

Find:

var position = ghostpool_rating.position;

Replace with:

var position = Math.round( ghostpool_rating.position / 23.3 ) * 23.3;

Find:

position = e.offsetX + 4;

Replace with:

position = Math.round( ( e.offsetX + 4 ) / 23.3 ) * 23.3;

37. How do I change the page the login form redirects to?

In your child theme's functions.php file add:

function gp_login_redirect( $gp_redirect ) {    
    $gp_redirect_link = '';    
    $gp_redirect = '<script data-cfasync="false" type="text/javascript">window.location.replace("' . $gp_redirect_link . '");</script>';    
    return $gp_redirect;
}
add_filter( 'gp_redirect_filter', 'gp_login_redirect', 10, 2 );

Where $gp_redirect contains the redirect link. So to redirect to your BuddyPress profile page use:

function gp_login_redirect( $gp_redirect, $gp_user_data ) {    
    $gp_redirect_link = bp_core_get_user_domain( $gp_user_data->ID );    
    $gp_redirect = '<script data-cfasync="false" type="text/javascript">window.location.replace("' . $gp_redirect_link . '");</script>';    
    return $gp_redirect;
}
add_filter( 'gp_redirect_filter', 'gp_login_redirect', 10, 2 );

For older versions of the theme use:

Open lib/inc/login-settings.php and find:

echo "<script data-cfasync='false' type='text/javascript'>window.location.reload();</script>";

Replace with:

$gp_redirect = '';
echo "<script data-cfasync='false' type='text/javascript'>window.location.replace( '" . $gp_redirect . "' );</script>";

Where $gp_redirect contains the redirect link. So to redirect to your BuddyPress profile page use:

$gp_redirect = bp_core_get_user_domain( $gp_user_data->ID );
echo "<script data-cfasync='false' type='text/javascript'>window.location.replace( '" . $gp_redirect . "');</script>";

38. How do I add a Favicon to my site?

This is controlled by WordPress, not the theme. Go to Appearance > Customize > Site Identity > Site Icon.

39. Why do I not see the featured images on my site?

1) Make sure you have selected a featured image for each post/page/slide.

2) Make sure you have not set the image width to 0 or left it empty on the Theme Options pages, Also make sure you've not set it to 0 (it can be left empty) on individual post/pages and shortcodes.

3) Make sure you have an image editor installed on your server such as GD Library or ImageMagick. If you are not sure please ask your web host about this.

4) CDN hosted images are not supported - the images need to be uploaded to the server the site is on.

40. How do I open the affiliate button link in a new window?

In your child theme's functions.php file add:

function ghostpool_affiliate_link_target() {
    return '_blank';
}
add_filter( 'gp_affiliate_link_target', 'ghostpool_affiliate_link_target' );

41. How do I add/remove breadcrumbs?

The breadcrumbs shown in the demo are added by the Yoast WordPress SEO plugin. Install this plugin and then go to SEO -> Search Appearance and click the Breadcrumbs tab and click Enabled.

42. How do I manually add a review score that is not an average of the multi criteria?

I never recommend editing the parent theme files but if you really want to add your own review score manually without it being an average of the multiple ratings you've added do the following:

Open lib/inc/ratings.php and find:

$GLOBALS['ghostpool_total_score'] = number_format( $GLOBALS['ghostpool_site_rating_sum'] / count( $GLOBALS['ghostpool_site_rating'] ), 1 ) + 0;

Replace with:

$GLOBALS['ghostpool_total_score'] = $GLOBALS['ghostpool_site_rating'][0];

Find:

$GLOBALS['ghostpool_total_score'] = number_format( $GLOBALS['ghostpool_site_rating_sum'] / count( $GLOBALS['ghostpool_site_rating'] ), 1 ) + 0;

Replace with:

$GLOBALS['ghostpool_total_score'] = number_format( $GLOBALS['ghostpool_site_rating'][0], 1 ) + 0;

Open lib/sections/review-results.php and find:

$gp_site_ratings = $GLOBALS['ghostpool_site_rating'];

Replace with:

$gp_site_ratings = array_slice( $GLOBALS['ghostpool_site_rating'], 1 );

Now the first rating will only be used for the main score and the first criteria will not be used.

43. How do I modify the BuddyPress registration fields/template?

Modifying Registration Fields:

BuddyPress provide documentation on how to modify the registration fields here: https://codex.buddypress.org/getting-started/guides/modifying-the-registration-form/

Modifying Registration Templates:

If you're using BuddyPress, then the registration page is being generated by BuddyPress and not the theme. You can add the following directory within your child theme folder /buddypress/members/register.php to override the default registration template.


44. I cannot see any related posts?

Related posts are only displayed if posts have one or more of the same post tags as the post you are viewing. To add post tags to posts, on the right-hand side of the post add your tags from the "Tags" panel.

45. Increasing Maximum Input Vars

Maximum input vars limit the number of input variables which affect menus and theme options in the Aardvark theme. To increase the Maximum input vars do the following:

Method 1: Increasing Max Input Vars In .htaccess File

Step 1: Locate the .htaccess file inside the root of your WordPress installation (located in the same folder as your /wp-content/ and /wp-admin/ directories) using an FTP client or file manager in your web hosting control panel (if you can’t find it see why you can’t find the .htaccess file and how to find it or if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in .htaccess file:

php_value max_input_vars 1000
php_value suhosin.get.max_vars 1000
php_value suhosin.post.max_vars 1000
php_value suhosin.request.max_vars 1000

Step 3: Now save the file.

Method 2: Increasing Max Input Vars In php.ini File

Step 1: Locate the php.ini file inside the /wp-admin directory using an FTP client or file manager in your web hosting control panel (if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Paste this code in  your .php.ini file:

max_input_vars = 1000
suhosin.get.max_vars = 1000
suhosin.post.max_vars = 1000
suhosin.request.max_vars = 1000

Step 3: Now save the file.

Step 4: If you still have issues, look for this file in your root directory and make the same changes.

46. How do I enable comments on pages?

Go to Settings -> Discussion and make sure Allow people to post comments on new article is checked.

Now on any page click the Screen Options button in the top right corner of the page and check the Discussion option.

Since WordPress 4.3 comments are not enabled on pages by default - to enable them use the following plugin: https://wordpress.org/plugins/no-page-comment/

47. How do I add new fonts to theme options backend?

To add custom fonts to the Theme Options typography options you can do the following:

Step 1: Upload your fonts with the format (.ttf, .otf, .woff, .eot, .woff2) to your child theme in the directory wp-content/themes/child-theme-name/fonts/

Step 2: Create a new file called fonts.css and upload it to wp-content/themes/child-theme-name/fonts. Add the following code to this file:

@font-face {
font-family: 'MyWebFont';
font-style: normal;
font-weight: 500;
src: url('webfont.eot'); /* IE9 Compat Modes */
src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('webfont.woff2') format('woff2'), /* Super Modern Browsers */
url('webfont.woff') format('woff'), /* Pretty Modern Browsers */
url('webfont.ttf') format('truetype'); /* Safari, Android, iOS */
}

You need to change "MyWebFont" to the font name you want to add.

Step 3: Edit the file field_typography.php located in the directory wp-content/themes/theme-name/lib/framework/redux/inc/fields/typography/.

Add this code after the line 39:

'MyWebFont' => "My Web Font",

Step 4: Next find the first occurrence of:

if ( isset( $this->field['all_styles'] ) && ! empty( $this->field['all_styles'] ) ) {

Above this add:

$this->field['ext-font-css'] = get_stylesheet_directory_uri() . 'fonts/fonts.css';

Step 5: Finally, in your child theme functions.php file add:

if ( ! function_exists( 'ghostpool_enqueue_custom_fonts' ) ) {
    function ghostpool_enqueue_custom_fonts() {
        wp_enqueue_style( 'gp-redux-custom-fonts', get_stylesheet_directory_uri().'/fonts/fonts.css');
    }
}
add_action( 'wp_enqueue_scripts', 'ghostpool_enqueue_custom_fonts' );

48. How do I convert a lot of my posts to review pages?

You can use a plugin such as Convert Post Types plugin to convert one post type to another (such as posts to page) in bulk.

49. How do I add a custom captcha to the pop login and register forms?

In your child theme's functions.php add the following:

function ghostpool_custom_captcha() {
    
    /* Validation code goes here */
    
    return $captcha;
}
function ghostpool_custom_captcha_display() {
    
    /* Code to display captcha goes here */
    
}

You will need to get the validation code and display code for the captcha plugin that the plugin website should provide.

50. My site is running slow, what can I do?

Before blaming the theme there are a number of things that may be causing your site to slow down. 

First ask yourself, does this issue occur when you are using any other theme? If it does, then it's probably a server or plugin issue. If it's a plugin issue, disable all plugins and reactivate them one by one to find which one(s) are causing the slow down. If it's a server problem then you should contact your web host.


If this issue only occurs when using this theme there are a number of things you can do to improve the pagespeed, as follows:

Install a cache

This is an absolute must. If you're not already using a caching plugin and you're complaining about page speed install a caching plugin immediately! I recommend WP Super Cache or W3 Total Cache.

Optimize images

Optimizing your images reduces their file size without losing picture quality. You can either use a program that does this before uploading your images to your server (such as ImageOptim for the Mac) or you can use a WordPress plugin that does this after uploading your images.

Minify JavaScript and CSS files

Minifying your JavaScript and CSS files basically makes these files as small as possible so they load quicker. There are plenty of plugins out there that minify these files, I recommend Better WordPress Minify.

Remove Query Strings from Static Resources

Use the following Remove Query Strings From Static Resources plugin to remove query strings from static resources like CSS & JS files, to improve your speed scores in services like PageSpeed, YSlow, Pingdom and GTmetrix. Resources with a “?” or “&” in the URL are not cached by some proxy caching servers, and moving the query string and encode the parameters into the URL will increase your WordPress site performance.

Use a VPS or dedicated server

If you are hosted on a shared server you should really consider moving to a VPS or dedicated server. A shared server distributes the server resources across many sites leading to a noticeable slow down when sites on the server have a lot of visitors. If your own site is getting a decent number of visitors you should definitely not be using a shared server. With VPS and dedicated servers you have your own server resources that are not used by any other sites.

Use a CDN to load media, CSS and JavaScript files

A Content Delivery Network (CDN) works by providing alternative server nodes for users to download your files. These nodes are spread throughout the world, therefore being geographically closer to your users, ensuring a faster response and download time of content due to reduced latency. Some of the most popular CDNs are Amazon S3, Microsoft Windows Azure and MaxCDN.

For Gauge users also check out the following video from a fellow buyer:



If you're hosted on a VPS/dedicated server, installed a cache, optimized your images and minified your files and still experience page speed issues then I will need some more information from you in order to determine the cause of this issue.

1) Run your site through http://tools.pingdom.com/ and provide me with the link to the results page.

2) Provide me with WordPress admin access (URL, username and password).

51. It says the theme is broken or missing a style sheet?

If after installing the theme it says it is broken or the style sheet is missing it's nothing to worry. This is one of the most common errors new users to WordPress experience. To upload the theme correctly do the following:

  1. Go to your ThemeForest Downloads page, locate the theme, click the green Download button and select the Installable WordPress file only option.
  2. Log in to the WordPress Admin Panel.
  3. Go to Appearance > Themes.
  4. Click the Add New button.
  5. Click the Upload Theme button and upload the zip file you just downloaded.

52. How do I display the hub title in the browser on child pages when using WordPress SEO plugin?

If you're using the WordPress SEO plugin it will overwrite the theme settings for how the page title is displayed in the browser. You can adjust the title display from SEO > Titles & Metas.

To add the parent hub title to hub child page go to SEO > Titles & Metas > Post Types and in the Page text box replace the existing code with:

%%parent_title%% %%title%% %%page%% %%sep%% %%sitename%%

53. How do I resize Google ads on my site?

Visit the following site which explains how to make your Google ads responsive: http://www.labnol.org/internet/google-adsense-responsive-design/25252

54. How do I change the order of the hub tabs?

To change the order of the hub tabs edit the menu order option in the Page Attributes panel on each child page. All pages have a value of 0 by default. The lower the number the more to the left the hub tab link will appear.

55. How do users add avatars (images) to their profiles?

WordPress uses Gravatar to add avatars (user images). Register a free account at http://gravatar.com, associate it with the email you're using on your WordPress site and upload your avatar image. Now go back to your site and within a short amount of time your avatar will show up in your comments, profile page etc. If you want people to upload an avatar from your own site instead, use a plugin such as "Add Local Avatar".

56. How do I find my ThemeForest Item Purchase Code?

To find your licence key/purchase code you need to log into your ThemeForest account and go to your “Downloads” page.

Locate the relevant theme and click on the Download button and next on the License Certificate & purchase code link in drop-down menu.

After you have downloaded the certificate you can open it in a text editor such as Notepad and copy the Item Purchase Code.


57. I cannot import the demo data

If you cannot import the demo data because it never completes the import process or you receive an error it could be because one of the following reasons:

Recommended PHP Configuration Limits

If the import never completes or you receive an error your PHP configuration limits may be set too low. You should contact your webhost and ask them to increase the following:

You can verify your PHP configuration limits by installing a simple plugin found here.

Manually Import Demo Content

If you still can't import the demo data you can try to manually import the demo content without images. Go to Tools > Import and select the WordPress Importer. Click the "Choose File" button and select the demo file from theme-name/framework/importer/demo-files/content.xml. Now click "Upload file and import". Choose to assign all posts to an existing user and make sure the "Download and import file attachments" is not checked. This means the demo file will not import any images, so you will need to add these to the imported posts and pages manually. Now click Submit.

To import the widgets go to Plugins > Add New and search for "Widget Importer & Exporter" and install and activate the first plugin. Now go to Tools > Widget Importer & Exporter and click the "Choose File" button and select the widget file from theme-name/framework/importer/demo-files/widgets.json. Rename this file to widgets.wie and then click "Import Widgets".

58. Why do I have so many different versions of the same image on my server?

If you look in your uploads folder and see different versions of the same image this is perfectly normal. The theme crops each image to different sizes because these sizes are used in various places on your website. So you may have the same image shown as a 50 x 50 thumbnail and as a large featured image at 800 x 400. The theme will create two additional versions of these images at these dimensions.

This is much more effective than just creating a few different sizes of an image (thumbnail, medium, large), like some themes do, and then resizing them using HTML. If you were to resize a large image with HTML, the large image is still being loaded and then constrained with HTML, which uses more bandwidth and increases your page load time, which in turn is not very SEO friendly. What the theme does is only load the images at the exact size they need to be.

The theme does not currently delete versions of the images no longer in use. So if you change the featured image on your posts from 800 x 400 to 500 x 300 and then to 400 x 600 all of these images will be created but the images no longer used (800 x 400 and 500 x 300) will not be deleted from your server. This is something I hope to add in the future.

You can just leave these images on your server and ignore them because they are not being loaded on your site so they have no impact on your bandwidth or pageload, these just contribute to a bit of disk space.

However you can delete all the resized images in your uploads folders and the server will then only recreate the different image sizes that currently exist on your site. Before doing this first make a backup of your uploads folder and do not delete the original images, only the resized versions that have the extensions -widthxheight.png!

59. How do I change the user rating and/or number of votes?

Install the following plugin: https://wordpress.org/plugins/show-hidden-post-meta/ 

Now edit the hub page with the user rating and/or votes you want to edit and scroll down to the Custom Fields panel and edit the value of the _gp_user_rating and _gp_user_votes field.

If you don't see the Custom Fields panel, click the Screen Options tab in the top right corner and check the Custom Fields option.

60. How do I add a BuddyPress cover image?

Go to Settings > BuddyPress, click the Options tab and make sure Allow registered members to upload cover images is checked. Now go to your BuddyPress profile page, by clicking your username anywhere on the site and click Change Cover Image link.

61. Increasing Post Maximum Size

To increase the Post Maximum Size do the following:

Step 1: Locate the php.ini file inside the /wp-admin directory using an FTP client or file manager in your web hosting control panel (if you’re not sure how to do this, ignore the steps below and contact your web host who can do this for you).

Step 2: Find the following line in your php.ini file:

post_max_size

Step 3: Increase the value to 64MB or higher and save the file.

Step 4: If you still have issues, look for this file in your root directory and make the same changes.

62. Why can't I see ratings in my Google search results?

While the theme has full schema markup so Google can display the ratings in search results it can take quite a while for Google to crawl your site and even then they may decide not to display the ratings in their search results. You can confirm that Google is reading your ratings by running a review page through https://developers.google.com/structured-data/testing-tool/ It should return all the rating data for that page meaning Google can display this data in their search results.

Also make sure you're using the latest version of the theme to ensure it has the latest schema markup and rich snippet support. To update the theme and/or plugins check out the help file that comes with your download inside the "Help" folder and refer to the "Updating The Theme" section.

63. How do I add/remove widgets and Visual Composer elements to the sidebar?

1) If you don't want to display Visual Composer elements in your sidebar go to Appearance > Sidebars Editor select the desired sidebars and click the green "Override widgets" button so it turns grey. This is essential if you're just adding normal widgets and can't see them in your sidebar/footer areas.

2) If you want to display only Visual Composer elements in your sidebar go to Appearance > Sidebars Editor select the desired sidebars and click the green "Override widgets" button so it turns green if it's not already enabled.

3) If you want to display both Visual Composer elements and ordinary widgets in your sidebar go to Appearance > Sidebars Editor select the desired sidebars and click the green "Override widgets" button so it turns green if it's not already enabled. Set the Override behavior to "Place before existing widgets".

64. I cannot access the drop down menu links on Android devices?

By default Android will redirect to the top level menu item link URL as soon as it is tapped. To display a submenu, users must tap, and without lifting their finger slide off of the menu item.

65. I can't login after clicking my BuddyPress email activation link?

The issue is the page URL contains the activation link which does not work with the popup modal login window. To fix this use the BP Autologin on Activation plugin which automatically logs the user in after clicking the email activation link.

66. Pagination is not working on my posts

If you've added an element on a post to display some items and click the page numbers or load more button the same items may be loaded. This is because some servers do not accept the standard pagination URL structures on posts (it should be fine on pages). If this is the case activate the child theme and add the following to the functions.php file:

function ghostpool_custom_pagenum_link( $link ) {
    if ( is_single() ) { 
        return preg_replace( '~/page/(\d+)/?~', '?page=\1', $link );
    } else {
        return $link;     }
}
add_filter( 'get_pagenum_link', 'ghostpool_custom_pagenum_link' );

67. Limit the number of cores using MAGICK_THREAD_LIMIT

In certain versions of ImageMagick there is a problem when trying to import the demo images and the system becomes extremely slow. This causes the demo importer to never complete. You can use a workaround to fix this as follows:

Access the root of your WordPress installation (located in the same folder as your /wp-content/ and /wp-admin/ directories) using an FTP client or file manager in your web hosting control panel where your .htaccess is located. If you can’t find it, then look at this article on why you can’t find the .htaccess file and how to find it.

Next, add this line to your .htaccess file:

SetEnv MAGICK_THREAD_LIMIT 1

This code limits the number of cores using MAGICK_THREAD_LIMIT which is used when uploading the demo images.

68. Finding the cause of your issue(s)

To find the cause of the issue(s) please do the following:

1. Update The Theme/Plugins

Ensure you using the latest version of the theme and required plugins. We will not look at any issues if you haven’t updated these. To update the theme and required plugins please refer to the theme documentation.

2. Switch Themes

If updating the theme/plugins didn't fix the issue go to Appearance > Themes and activate the Twenty Twenty-One theme and see if the issue(s) still occur.  If your site has visitors you can use the Theme Test Drive plugin so your users don’t see the theme you’ve switched to.

If the issue(s) still occur this means the theme is not causing the issue and this is probably a general WordPress or plugin issue.

3. Deactivate All Plugins

To see if it is a plugin issue deactivate all activated plugins (except the plugins that are needed to test the issues). If this fixes the issue(s) this means the theme is not the cause. Reactivate the plugins one by one or in groups so you can identify which plugins are responsible.

4. If the theme is responsible

If the issue only occurs when this theme is activated it looks like the theme is responsible. Please provide WordPress admin access and I'll take a closer look.