Contents

1. How do I change the WooCommerce product page image dimensions?

2. How do I show all members in Members Directory as the admin?

3. I cannot import the demo data

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

5. I cannot see the icons on my site?

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

7. How do I add/edit the favicon?

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

9. Error messages on Youzify Activity page

10. How do I remove the latest activity update in the profile header?

11. Updating the theme and bundled plugins

12. How do I restrict access to the BuddyPress members directory and profile pages?

13. I get an error of type E_ERROR from class-tgm-plugin-activation.php

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

15. Users can't see activity when Youzify is activated

16. Why did you remove this theme?

17. Removing the copyright text from Youzify Panel

18. Adding Elementor editor to review templates

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

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

21. Adding Google Webfonts

22. My site crashes when I try to create a new post/page?

23. Does the theme support Cyrillic or Georgian characters?

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

25. Limit the number of cores using MAGICK_THREAD_LIMIT

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

27. How do I fix the header at the top of the page?

28. Media uploaded via Activity post are not shown

29. Increasing Post Maximum Size

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

31. After updating Aardvark my style customisations are not working

32. Editing the BuddyPress profile tabs

33. Can't access BuddyPress pages/features?

34. Editing registration emails

35. Using Custom Endpoints / Global Tabs

36. How do I remove category links from showing up?

37. My BuddyPress widgets have disappeared?

38. Default image dimensions and registering new image dimensions

39. Adding different menus to different pages

40. How do I remove the comments section from pages?

41. Adding page settings to custom post types, taxonomies and templates

42. I can't get see any rating or page loader icons?

43. CDN images are not working on my site?

44. Load More Button showing duplicate content

45. Finding the cause of your issue(s)

46. How to add custom fields

47. Adding new fonts to your website

48. Adding comments to hub pages

49. Increasing Maximum Input Vars

50. Can't edit review templates with WPBakery Page Builder

51. How do I modify X and Y on my BuddyPress pages?

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

53. BuddyPress members and groups have not been imported?

54. Experiencing issues after updating from Youzer to Youzify

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

56. How do I centre the logo and/or navigation?

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

58. Manually editing user rating on a post

59. How to edit/remove the loading icon?

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

61. I cannot see my posts when I order by views?

62. Increasing PHP Maximum Execution Time

63. How do I change or add new BuddyPress profile icons?

64. Increasing PHP Memory Limit

65. How to change the membership circles image on the homepage?

66. Adding WPBakery Page Builder editor to review templates

67. How do I display related posts based on categories instead of tags?

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

69. Can I display different widgets on different categories?

70. How do I change the size of the videos in the lightbox?

71. Adding shortcodes via custom fields

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

73. How do I disable Google Fonts?

74. How do I insert advertisements on my site?

75. How can I order posts by views daily, weekly or monthly?

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

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

78. How to install the default Twenty-Twenty * themes?

79. I get a "Warning: Cannot assign an empty string to a string offset" when installing the theme?

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

81. How can I remove the slider gradients?

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

83. Adding custom post/page options

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

85. BP Profile Search error: Form ID # is empty or nonexistent.

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

87. "The link you followed has expired. Please try again." error

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

89. How do I change the colour and opacity of the dark gradients?

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

91. What SEO plugin do you recommend?

92. What size are the page header images?

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

94. Using Hub Fields With Foreign Characters

95. Ordering posts by views

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

97. Adding captcha to Login and Register forms

98. Changing the hub tab titles globally

99. Item loops using same images and links

100. How to change the homepage icons and colors

101. Can I import more than one demo on my site?

102. How do I set up the bbPress forum like the demo?

103. Editing registration emails

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

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

106. How do I add/remove breadcrumbs?

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

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

109. How do I remove the shadows from my text?

110. Comment form is not reloading after submitting comment

111. Switching To Tablet and Mobile View in Elementor

112. How do I edit the footer logo?

113. How do I change the size of the WooCommerce images

114. I would like a refund?

115. After updating BuddyPress my website won't load or I get a fatal error?

116. How do I add a BuddyPress cover image?

117. How do I disable the Gutenberg editor?

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

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

120. I do not receive emails from the contact form?

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

122. Translating the months in release dates

123. Pagination is not working on my posts

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

125. I get a "Sorry, the content area was not found in your page" error

126. How can I edit and/or register new image sizes?

127. Grey images when importing demo data

128. How do I enable comments on pages?

129. How do I remove specific entries from activity stream?

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

131. How do I change the widget header background color?

132. Issues with Redux metaboxes extension on WordPress.com server

133. Modifying Youzify BuddyPress pages

134. How can I make the slider transition automatically?

135. Why are the Good and Bad Points not displaying on the page?

136. Creating BuddyPress Profile Menus

137. Using comment plugins such as Disqus

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

139. I can't see the BuddyPress/bbPress pages?

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

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

142. Why am I not receiving emails?

143. How do I create BuddyPress groups?

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

145. Increasing WordPress Upload Limit

146. I cannot see any related posts?

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

148. Enabling the "BuddyPress Legacy" Template Pack

149. Updating WPBakery Page Builder with the theme

150. How do I restrict access to BuddyPress content?

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

152. How do I change the width of the theme?

153. How do I show inactive members in my BuddyPress members directory?

154. Updating your PHP version

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

156. Creating a clickable page background

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

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

159. How do I set Web Hosting details?

160. Theme and Youzify login forms

161. My page(s) look weird?

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

163. Can a user delete their user rating?

1. How do I change the WooCommerce product page image dimensions?

Go to WooCommerce -> Settings -> Products and change the "Single Product Image" dimensions.

You will not see a change on product pages even though the images are being cropped to the sizes you specify because WooCommerce is still stretching the images to 48% of the container width. You'll need to edit the widths with CSS, e.g.

/* Image Width */

.woocommerce #content div.product div.images,.woocommerce div.product div.images,.woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
width: 48%;
}


/* Container to the right width */

.woocommerce #content div.product div.summary,.woocommerce div.product div.summary,.woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
width: 48%;
}

2. How do I show all members in Members Directory as the admin?

If you're using profile filters to filter which members are shown in your Members Directory you may still want to see all members from the admin account. 

To do this make sure you're using version 2.14 of the theme and GhostPool Core plugin, and then add the following to your child theme's functions.php file:

add_filter( 'ghostpool_show_all_members_if_admin', function() {
    return true;
});

3. 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".

4. 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).

5. 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.

6. 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.

7. How do I add/edit the favicon?

This is a core WordPress option and not part of the theme. Go to Appearance > Customize > Site Identity > Site Icon to change the favicon.

8. 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.

9. Error messages on Youzify Activity page

If you are getting the following error message on your Youzify Actitivty page:

"Notice: Undefined index: in /nas/content/staging/aardvarkdemo/wp-content/plugins/youzify/includes/public/core/wall/yz-class-privacy.php on line 255"

Add the following code to your functions.php file and then refresh the Activity page twice. Now remove the code from your functions.php file and this should fix the issue.

10. How do I remove the latest activity update in the profile header?

If you're trying to remove the latest activity text from your profile header and it doesn't exist in the activity stream you can manually delete it. In your child theme's functions.php file add the following:

delete_user_meta( $user_id, 'bp_latest_update' );

Where $user_id is the ID of the user you want to delete the text for. In most cases the admin account has a user ID of 1 e.g.

delete_user_meta( 1, 'bp_latest_update' );

Remove the code from functions.php when this has been successfully removed.

11. Updating the theme and bundled plugins

It is important that you keep the theme and bundled plugins (those plugins that came with the theme) up to date.

To update the theme please see: https://ghostpool.com/documentation/aardvark/getting-started/updating-the-theme/

Once you've updated the theme you'll likely need to update some of the bundled plugins. To update the bundled plugins please see: https://ghostpool.com/documentation/aardvark/getting-started/updating-the-plugins/

12. How do I restrict access to the BuddyPress members directory and profile pages?

You will need to be use the Paid Membership Pro plugin to create membership levels, charge for access and restrict specific content. You'll also need to use the BuddyPress Add On to control access to specific BuddyPress content. However this plugin does not allow you to control access to the members directory and profiles by default.

1) To add this functionality in your child theme's functions.php file add:

/**
 * Restrict viewing of the members directory and individual profiles if the user doesn't have access
 *
 */
if ( defined( 'PMPRO_VERSION' ) && defined( 'PMPROBP_DIR' ) && function_exists( 'bp_is_active' ) && ! function_exists( 'ghostpool_pmpro_bp_restrict_member_viewing' ) ) {
    function ghostpool_pmpro_bp_restrict_member_viewing() {
        if ( ! function_exists( 'pmpro_getMembershipLevelForUser' ) ) {
            return;
        }
    
        if ( ! is_buddypress() ) {
            return;
        }
        
        global $current_user;
        $user_id = $current_user->ID;
    
        if ( ! empty( $user_id ) ) {
            $level = pmpro_getMembershipLevelForUser( $user_id );
        }
        if ( ! empty( $level ) ) {
            $level_id = $level->id;
        } else {
            $level_id = 0;    // non-member user
        }
        if ( ! bp_is_user() && bp_is_members_component() && $level_id === 0 ) {        
            //pmpro_bp_redirect_to_access_required_page();
        }
        if ( bp_is_user() && $level_id === 0 ) {
            pmpro_bp_redirect_to_access_required_page();
        }
    
    }
    add_action( 'template_redirect', 'ghostpool_pmpro_bp_restrict_member_viewing' );
}

3) You can control what membership levels can access the members directory by editing the following code:

if ( ! bp_is_user() && bp_is_members_component() && $level_id === 0 ) {        
    //pmpro_bp_redirect_to_access_required_page();
}

Change 0 to whatever level cannot access the members directory. 0 refers to members without any level. Uncomment "pmpro_bp_redirect_to_access_required_page();" to enable the restriction.

4) You can control what membership levels can access the member profiles by editing the following code:

if ( bp_is_user() && $level_id === 0 ) {            
    pmpro_bp_redirect_to_access_required_page();        
}    

Change 0 to whatever level cannot access the members directory. 0 refers to members without any level. Comment "pmpro_bp_redirect_to_access_required_page();" to disable the restriction.

13. I get an error of type E_ERROR from class-tgm-plugin-activation.php

You are getting this error because both your theme and the plugin are loading the TGM plugin class. It looks like the theme you are using is not checking if this class has already been loaded.

Add the following to your child theme's functions.php file so you only load the theme's version:

add_filter( 'gpur_load_tgm_class', '__return_false' );

14. 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' );

15. Users can't see activity when Youzify is activated

If you're using the Youzify plugin go to Youzify > General Settings > Wall Settings and disable the Privacy setting.

16. 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.

17. Removing the copyright text from Youzify Panel

To remove the "Designed & Developed By KAINELABS.COM" text go to Youzify > Profile Settings and disable Enable Account Copyright.

18. Adding Elementor editor to review templates

Step 1: Go to Elementor > Settings.

Step 2: From the Post Types checkboxes check all the post types you want to show the page builder editor on, including "Review Templates".

Step 3: Click Save Changes.

19. 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.


20. 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

21. Adding Google Webfonts

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

function ghostpool_google_webfonts() {
    echo '';
}
add_action( 'wp_head', 'ghostpool_google_webfonts' );

Make sure you activate the child theme to load this code.

2) Go to Google Web Fonts website, select the font you want to use and copy the "Standard" code provided e.g.

<link href="https://fonts.googleapis.com/css?family=Roboto&display=swap" rel="stylesheet">

3) Add this to your code above e.g.

function ghostpool_google_webfonts() {
    echo '<link href="https://fonts.googleapis.com/css?family=Roboto&display=swap" rel="stylesheet">';
}
add_action( 'wp_head', 'ghostpool_google_webfonts' );

4) Now go to Appearance > Theme Options > Styling and add the name of the font in one of the Font text fields.

22. My site crashes when I try to create a new post/page?

The "Hub Association" and "Custom Tab" options on posts and pages try to query every hub on your site so you can easily select them from the dropdown menu. If you have a huge amount of these hubs this may exceed your server's memory limit or maximum execution time. You can increase the memory limit as explained here and you can increase the maximum execution time using this plugin.

If this doesn't resolve the issue you can convert the drop down menus to ordinary text boxes where you manually enter the hubs IDs. To do this add the following code to your child theme's functions.php file:

// Hub Association Option
function ghostpool_change_hub_association_option_type() {
    return array(
        'id'      => 'hub_association_ids',
        'type'    => 'text',
        'title'   => esc_html__( 'Hub Association', 'huber' ),
        'desc' => esc_html__( 'Enter the hub IDs separating each one with a comma between quotation marks e.g. "405","32","21". This post will then display under the Reviews, News or Videos tab on the selected hubs.', 'huber' ),
        'default' => '',
    );                    
}
// Custom Tab Option
function ghostpool_custom_hub_tab_option_type() {
    return array(
        'id'      => 'custom_hub_tab_ids',
        'type'    => 'text',
        'title'   => esc_html__( 'Custom Tab', 'huber' ),
        'desc' => esc_html__( 'Make this page a hub tab by entering the hub IDs separating each one with a comma between quotation marks e.g. "405","32","21".', 'huber' ),
        'default' => '',
    );                    
}

If you already have been using these options as drop down menus you will need to convert your existing values to comma separated values between quotation marks. To do this add the following to your child theme's functions.php file. This converts 200 posts at a time, you can increase this number to change more posts at once:

if ( get_option( 'huber_converted_hub_association_option' ) != '1' ) {
    $args = array(
        'post_type' => array( 'post', 'page' ),
        'post_status' => array( 'publish', 'future' ), 
        'meta_key' => 'hub_association_ids',
        'posts_per_page' => '200', 
        'orderby' => 'date', 
        'order' => 'desc',
        'no_found_rows'  => true,
        'cache_results' => false,
        'update_post_meta_cache' => false,
        'update_post_term_cache' => false,
    );
    $posts = get_posts( $args );
    if ( ! empty ( $posts ) ) {
        foreach ( $posts as $post ) {            
            if ( get_post_meta( $post->ID, 'hub_association_ids', true ) && is_array( get_post_meta( $post->ID, 'hub_association_ids', true ) ) ) {
                $array = '';
                $values = ( get_post_meta( $post->ID, 'hub_association_ids', true ) );
                foreach ( $values as $value ) {        
                    $array[] = $value;
                }
                $string = '"' . implode( '", "', $array ) . '"';
                update_post_meta( $post->ID, 'hub_association_ids', $string );
            }
        }
    } else {
        update_option( 'huber_converted_hub_association_option', '1' );
    }
    
}
if ( get_option( 'huber_converted_custom_hub_tab_option' ) != '1' ) {
    $args = array(
        'post_type' => array( 'post', 'page' ),
        'post_status' => array( 'publish', 'future' ), 
        'meta_key' => 'custom_hub_tab_ids',
        'posts_per_page' => '200', 
        'orderby' => 'date', 
        'order' => 'desc',
        'no_found_rows'  => true,
        'cache_results' => false,
        'update_post_meta_cache' => false,
        'update_post_term_cache' => false,
    );
    $posts = get_posts( $args );
    if ( ! empty ( $posts ) ) {
        foreach ( $posts as $post ) {            
            if ( get_post_meta( $post->ID, 'custom_hub_tab_ids', true ) && is_array( get_post_meta( $post->ID, 'custom_hub_tab_ids', true ) ) ) {
                $array = '';
                $values = ( get_post_meta( $post->ID, 'custom_hub_tab_ids', true ) );
                foreach ( $values as $value ) {        
                    $array[] = $value;
                }
                $string = '"' . implode( '", "', $array ) . '"';
                update_post_meta( $post->ID, 'custom_hub_tab_ids', $string );
            }
        }
    } else {
        update_option( 'huber_converted_custom_hub_tab_option', '1' );
    }
    
}

23. 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.

24. 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 );



25. 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.

26. 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.

27. How do I fix the header at the top of the page?

Go to Theme Options > CSS Settings and add:

#header {
position: fixed;
width: 1200px;
}

@media only screen and (min-width: 1024px) and (max-width: 1199px) {
	#header {
	width: 1000px;
	}
}

@media only screen and (min-width: 960px) and (max-width: 1023px) {
	#header {
	width: 900px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
	#header {
	width: 748px;
	}
}

@media only screen and (max-width: 767px) {
	#header {
	width: 100%;
	}
}

#content-wrapper {
margin-top: 70px;
}

 

28. Media uploaded via Activity post are not shown

Media such as images uploaded when posting an Activity update using Youzer plugin may not show in the posted activity entry. To fix this add the following code to your functions.php file.

Now refresh your Activity page twice, then remove the code and the issue should be solved.


29. 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.

30. 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.


31. After updating Aardvark my style customisations are not working

There has been a change to the way the Aardvark Child loads the parent and child style.css files. You will need to update your child theme functions.php to fix this. Find:

/**
 * Load parent style.css
 *
 */
if ( ! function_exists( 'ghostpool_enqueue_child_styles' ) ) {
    function ghostpool_enqueue_child_styles() { 
        wp_enqueue_style( 'gp-parent-style', get_template_directory_uri() . '/style.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'ghostpool_enqueue_child_styles' );

Replace with:

/**
 * Load child theme style.css
 *
 */
if ( ! function_exists( 'ghostpool_enqueue_child_styles' ) ) {
    function ghostpool_enqueue_child_styles() { 
        wp_enqueue_style( 'ghostpool-style', get_template_directory_uri() . '/style.css', array(), AARDVARK_THEME_VERSION );
        wp_enqueue_style( 'ghostpool-child-style', get_stylesheet_directory_uri() . '/style.css', array( 'ghostpool-style' ), AARDVARK_THEME_VERSION );
        wp_style_add_data( 'ghostpool-child-style', 'rtl', 'replace' );
    }
}
add_action( 'wp_enqueue_scripts', 'ghostpool_enqueue_child_styles' );

32. Editing the BuddyPress profile tabs

Please see:

https://rtmedia.io/docs/developers/add-remove-buddypress-tabs/

33. Can't access BuddyPress pages/features?

If you are using the PMPro BuddyPress Addon this plugin restricts access to BuddyPress features unless the user has the required membership.

If you don't want to restrict access to any BuddyPress feature just deactivate this plugin, otherwise do the following:

Step 1: Go to Memberships > PMPro BuddyPress and find the Unlock BuddyPress? option and select "Yes - Give non-member users access to specific features". 

Step 2: Now scroll down to the Include in Member Directory option and select "Yes".

Step 3: You can now set the Unlock BuddyPress? option back to "Yes - Give non-member users access to all of BuddyPress" if you wish.


34. Editing registration emails

If you are using BuddyPress then this plugin controls the registration emails not the theme. To change BuddyPress emails see: https://codex.buddypress.org/emails/

If you're not using BuddyPress you can add the following filters to your child theme's functions.php file:

// Change admin's registration notice email subject
function ghostpool_registration_notice_subject( $blogname ) {
    return 'Hi [%s]';
}
add_filter( 'ghostpool_email_registration_notice_subject', 'ghostpool_registration_notice_subject' );
// Change admin's registration notice email text
function ghostpool_registration_notice_message( $message, $blogname, $user_login, $user_email ) {
    $message  = sprintf( esc_html__( 'New user registration on your blog %s:', 'aardvark-plugin' ), $blogname ) . "\r\n\r\n";
    $message .= sprintf( esc_html__( 'Username: %s', 'aardvark-plugin' ), $user_login ) . "\r\n\r\n";
    $message .= sprintf( esc_html__( 'Email: %s', 'aardvark-plugin' ), $user_email ) . "\r\n";
    return $message;    
}
add_filter( 'ghostpool_email_registration_notice_message', 'ghostpool_registration_notice_message', 10, 4 );
// Change user's email subject
function ghostpool_registered_user_subject( $blogname ) {
    return 'Hi [%s]';
}
add_filter( 'ghostpool_registered_user_subject', 'ghostpool_registered_user_subject' );
// Change user's email text
function ghostpool_registered_user_message( $message, $blogname, $user_login ) {
    $message  = esc_html__( 'Hi there,', 'aardvark-plugin' ) . "\r\n\r\n";
    $message .= sprintf( esc_html__( 'Welcome to %s.', 'aardvark-plugin' ), $blogname ) . "\r\n\r\n";
    $message .= sprintf( esc_html__( 'Username: %s', 'aardvark-plugin' ), $user_login ) . "\r\n";
    $message .= esc_html__( 'Password: [use the password you entered when signing up]', 'aardvark-plugin' ) . "\r\n\r\n";
    $message .= esc_html__( 'Please login at', 'aardvark' ) . ' ' . wp_login_url() . "\r\n\r\n";
    return $message;    
}
add_filter( 'ghostpool_registered_user_message', 'ghostpool_registered_user_message', 10, 3 );

35. Using Custom Endpoints / Global Tabs

If you want to create global custom tabs on all hubs follow the steps below. In this example we're going to create a new tab called "Guides".

1) Go to Theme Options > Hubs > Custom Endpoints and add a custom endpoint called "guides".

2) Scroll down to the Hub Tab Order and add %GLOBAL_TAB_guides% to display this endpoint in the hub tabs.

3) Next go to Pages > Add New and create a page called "Guides" and make sure the page slug matches the endpoint "guides". 

4) Add the Blog WPBakery Page Builder element to the page and enable the Post Association option and enter the category slug "guides".

5) Now create a category called "Guides" (with the slug "guides") and assign posts to this category. You can then associate posts with specific hubs from the Hub Association option. 

6) The "Guides" tab on each hub will only display posts in the "Guides" category associated with the specific hub your viewing.

36. How do I remove category links from showing up?

Cuckoo, Socialize and Habitat Themes:

Go to Theme Options -> Posts -> Post Categories and add the categories you want to remove to the Exclude Categories box.

Huber Theme:

Go to Theme Options -> General and add the categories you want to remove to the Exclude Post Categories box.

37. My BuddyPress widgets have disappeared?

BuddyPress widgets have been removed from version BuddyPress version 12.0.0 and later.

You can restore these widgets by using the BP Classic plugin. Please note, the widgets will not automatically reappear. You will need to manually readd them to your sidebars from Appearance > Widgets.

38. Default image dimensions and registering new image dimensions

This theme uses WordPress's native image resize function add_image_size(). You can edit the theme's predefined image sizes by adding the following code to your child theme's functions.php file. You can change the image width, height and cropping options (including cropping position) for any of the image sizes. You will then need to run the Regenerate Thumbnails plugin after uploading these changes to recrop all your images to the new dimensions.

function ghostpool_image_sizes() {                
    add_image_size( 'gp_small_image', 75, 75, true );
    add_image_size( 'gp_list_image', 250, 135, true );
    add_image_size( 'gp_square_image', 300, 300, true );
    add_image_size( 'gp_featured_image', 864, 467, true );
    add_image_size( 'gp_column_image', 727, 393, true );
    add_image_size( 'gp_related_image', 414, 224, true );
    add_image_size( 'gp_featured_box_small_image', 330, 240, true );    
    add_image_size( 'gp_featured_box_large_image', 600, 480, true );    
    add_image_size( 'gp_featured_box_full_image', 1260, 480, true );            
}

If you want to add your own image sizes to the selection, instead of changing a predefined image, add the following code to your child theme's functions.php file and add your new image sizes as shown below:

function ghostpool_register_new_image_sizes() {          
    add_image_size( 'ghostpool-new-image-name-1', 100, 100, true );
    add_image_size( 'ghostpool-new-image-name-2', 500, 900, false );              
}
add_action( 'after_setup_theme', 'ghostpool_register_new_image_sizes' );

39. Adding different menus to different pages

Step 1: In your child theme's functions.php file register your new menu items by adding the following:

function ghostpool_register_new_menus() {
    register_nav_menus( array(
        'gp-new-menu-1' => esc_html__( 'New Menu 1', 'aardvark' ),
        'gp-new-menu-2' => esc_html__( 'New Menu 2', 'aardvark' ),
    ) );
        
}
add_action( 'after_setup_theme', 'ghostpool_register_new_menus' );

This create two new menu areas.

Step 2: Now you need to tell the theme to use these menus on specific pages by adding the following to functions.php:

function ghostpool_custom_main_header_primary_nav() {
    $menu = '';
    
    if ( is_page( 123 ) ) {
    
        $menu = 'gp-new-menu-1';
        
    } elseif ( is_page( 456 ) ) {
        $menu = 'gp-new-menu-2';
    
    } else {
        $menu = 'gp-main-header-primary-nav';
    }
                
    return $menu;
}
add_filter( 'ghostpool_main_header_primary_nav', 'ghostpool_custom_main_header_primary_nav' );

This tells the theme to replace the main header primary menu with the menu "gp-new-menu-1" on the page with ID 123 and "gp-new-menu-2" on the page with ID 456. On all other pages it uses the original menu "gp-main-header-primary-nav".

You can do this for any of the theme menus using this method, just replace the filter name in step 2 with the following names:


40. How do I remove the comments section from pages?

Go to Pages -> All Pages and edit the desired pages. In the top right corner of the page click the Screen Options button and make sure the Discussion box is checked. Now scroll down the page and locate the discussion panel and uncheck the Allow comments box.

41. Adding page settings to custom post types, taxonomies and templates

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

function ghostpool_custom_page_settings( $settings ) {
    
    // Custom page template
    if ( is_page_template( 'custom-page-template.php' ) ) {
        $settings['header'] = 'gp-fullwidth-page-header';
        $settings['layout'] = 'gp-left-sidebar';
    }
    // Custom post type
    if ( is_singular( 'custom_post_type' ) ) {
       $settings['header'] = 'gp-standard-page-header';
       $settings['layout'] = 'gp-right-sidebar';
    }
    // Attachment page
    if ( is_attachment() ) {
        $settings['header'] ='gp-page-header-disabled';
        $settings['layout'] = 'gp-no-sidebar';
    }
    return $settings;
}
add_filter( 'ghostpool_page_settings', 'ghostpool_custom_page_settings' );

In this example you're loading your own header and layout settings for a custom page template, custom post type and attachment page. You can see all the available settings from aardvark/lib/framework/settings/load-settings.php.

42. I can't get see any rating or page loader icons?

If you can't see any of the theme icons such as for ratings or the page loader, gGo to Elementor > Settings > Features and disable the Inline Font Icons option.

43. 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 );
    }
}

44. Load More Button showing duplicate content

If you're loading new posts using the Load More Button option in the Posts element it will load duplicate content if you have also set an Offset. To fix this add the following to your child theme's functions.php file:

function ghostpool_adjust_load_more_offset_pagination( $found_posts, $query ) {
    if ( ! is_admin() && ! $query->is_main_query() && isset( $query->query_vars['offset'] ) ) {
        $offset = $query->query_vars['offset'];
        return $found_posts - $query->offset;
    } else {
        return $found_posts;
    }    
}
add_filter( 'found_posts', 'ghostpool_adjust_load_more_offset_pagination', 1, 2 );
function ghostpool_load_more_current_queries( $query ) {
   
    if ( is_admin() OR $query->is_main_query() ) {
        return;
    }
    
    if ( isset( $query->query_vars['offset'] ) ) {
        $offset = $query->query_vars['offset'];
    } else {
        return;
    }
    $posts_per_page = $query->query_vars['posts_per_page'];
        
    if ( $query->is_paged() ) {
        $page_offset = $offset + ( ( $query->query_vars['paged'] - 1 ) * $posts_per_page );
        $query->set( 'offset', $page_offset );
    } else {
        $query->set( 'offset', $offset );
    }
    
}    
add_action( 'pre_get_posts', 'ghostpool_load_more_current_queries' );

Make sure to change the $offset and $posts_per_page values to what you have set in your Posts element.

45. 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.

46. How to add custom fields

There are two ways to add custom fields depending on if you're using the Gutenberg Editor or Classic Editor.

If the fields are hidden use the Show Hidden Post Meta plugin to show hidden fields.

Gutenberg Editor

  1. Edit or create a new post and click Options button in the top right corner. 
  2. Select Preferences from the dropdown menu to open the Preferences window.
  3. Click the Panels tab and then enable the Custom fields option - reload the page when asked to.
  1. Once the page is reloaded scroll down to the bottom of the page where you will see a new Custom Fields panel.
  2. Click the Enter New link and then give your custom field a name and the value you want to display.
  3. Finally click the Add Custom Field button.



Classic Editor

  1. Edit or create a new post and click Screen Options button in the top right corner. 
  2. Check the Custom Fields option.
  1. Scroll down to the bottom of the page where you will see a new Custom Fields panel.
  2. Click the Enter new link and then give your custom field a name and the value you want to display.
  3. Finally click the Add Custom Field button.


47. Adding new fonts to your website

To add new fonts to your website 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: 'My Web Font 1';
font-style: normal;
font-weight: 500;
src: url('webfont.woff2') format('woff2'), /* Super Modern Browsers */
     url('webfont.woff') format('woff'), /* Pretty Modern Browsers */
     url('webfont.ttf') format('truetype'); /* Safari, Android, iOS */
}

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

function ghostpool_enqueue_new_fonts() {
    wp_enqueue_style( 'ghostpool-new-fonts', get_stylesheet_directory_uri() . '/fonts/fonts.css' );
}
add_action( 'wp_enqueue_scripts', 'ghostpool_enqueue_new_fonts' );
function ghostpool_add_new_font_families( $output ) {
    $new_fonts = array(
        'My Web Font 1',
    );
    $output = array_merge( $output, $new_fonts );
    return $output;
}
add_filter( 'ghostpool_font_families', 'ghostpool_add_new_font_families' );

Where 'My Web Font 1' is the display name.


48. Adding comments to hub pages

Copy huber/lib/sections/hub/hub-tab-page.php to your Huber child theme - retaining the directory structure - and add the following tag where the comments to appear.

<?php comments_template(); ?>

49. 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.

50. Can't edit review templates with WPBakery Page Builder

If you're only seeing shortcodes on review templates and can't edit the page with WPBakery Page Builder go to WPBakery Page Builder > Role Manager and from the Post types dropdown menu select "Custom" so you can check the "gpur-template" checkbox.

51. How do I modify X and Y on my BuddyPress pages?

Most BuddyPress page templates can be modified by adding the directory structure and file within your theme folder to override the default styling as explained here: https://codex.buddypress.org/themes/theme-compatibility-1-7/template-hierarchy/

However beyond this since BuddyPress is a third party plugin and is not part of the theme you should contact BuddyPress support at http://buddypress.org/support where they will be able to help you with modifying BuddyPresss templates.

While the theme completely supports BuddyPress, and even has customized BuddyPress elements, support does not cover customisations (click here for the support policy), this both includes customising the theme and third party plugins.

52. 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,

53. BuddyPress members and groups have not been imported?

The demo importer does not import members and groups. If you want to import these you can use a plugin such as BuddyPress Default Data.

54. Experiencing issues after updating from Youzer to Youzify

After updating Youzer to Youzify if you're experiencing issues make sure you are using Aardvark version 4.34 or higher. 

Once you're running this version, make sure you update to the latest version of the Aardvark Plugin from Appearance > Install Plugins.

To upgrade to Youzify please follow the steps provided by the Youzify support team here: https://kainelabs.ticksy.com/article/16887/ (note steps 11 and 12 are not relevant and have already been done by the theme update).

If you still have issues, for example you're unable to see the upgrade option, you can open a support ticket at https://kainelabs.ticksy.com/ where the Youzify support team will answer your questions. Sign in with your Envato login details and open a ticket in the "Youzify Upgrade Issues category".

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 centre the logo and/or navigation?

Go to Theme Options > CSS Settings and add:

#header {
text-align: center;
}

#logo {
float: none;
}

#nav {
float: none;
position: static;
display: inline-block;
margin-top: 30px;
text-align: left;
}

#bp-buttons {
position: absolute;
top: 20px;
right: 20px;
width: auto !important;
}

 

57. 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.

58. Manually editing user rating on a post

To manually edit the user rating on a post add the following to your child theme's functions.php file:

function ghostpool_update_average_user_rating() {
  
    $post_id = 123; 
    
    $rating_data = array();
    
    $rating_data['average_rating'] = 7;
    
    $rating_data['rating_sum'] = 100; // Total of all the user ratings added together
    
    $rating_data['user_votes'] = 1;
    
    $rating_data['criteria'] = array(
        array( 'criterion' => 'Criterion 1', 'rating' => 5 ),
        array( 'criterion' => 'Criterion 2', 'rating' => 2 ),
        array( 'criterion' => 'Criterion 3', 'rating' => 3 ),
    );    
        
    update_post_meta( $post_id, 'gp_post_user_rating_data', $rating_data );
    update_post_meta( $post_id, 'gp_average_user_rating', $rating_data['average_rating'] );
    update_post_meta( $post_id, 'gp_user_votes', $rating_data['user_votes'] );
    
}
add_action( 'init', 'ghostpool_update_average_user_rating' );

Edit the post ID, average rating, rating sum, user votes and criterion data to what you want. If the post has no criteria ratings replace this with:

$rating_data['criteria'] = array();  

Now go to your post and refresh the page. Once the user rating has been updated remove this code from your functions.php file.

59. How to edit/remove the loading icon?

Go to GhostPool Core > Site Settings > Layout > Page Loader.

60. 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;

61. I cannot see my posts when I order by views?

This is because the meta keys for each post aren’t added until the view count updates. To do this, open functions.php and find:

$accuracy = 50;

Replace with:

$accuracy = 100;

Now when each post is viewed by you or your visitors on the frontend it will update the views data and show up when ordering by posts.

You only need to do this step once. When you are done change the $accuracy value again.

62. 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.

63. How do I change or add new BuddyPress profile icons?

The theme adds icons to the profile menu navigation tabs. However if you're using a plugin to add new profile tabs or want to change the existing icons you can do this using CSS. Go to Theme Options > Styling and in the CSS Code box add:

.gp-theme #buddypress #object-nav li a:before {
content: '\f1db';
}
.gp-theme #buddypress #object-nav #activity-personal-li a:before {
content: '\f03a';
}
.gp-theme #buddypress #object-nav #xprofile-personal-li a:before,
.gp-theme.gp-fontawesome5 #buddypress #object-nav #xprofile-personal-li a:before {
content: '\f2c0';
}
.gp-theme #buddypress #object-nav #blog-personal-li a:before,
.gp-theme #buddypress #object-nav #blogs-personal-li a:before {
content: '\f0e8';
}
.gp-theme #buddypress #object-nav #events-personal-li a:before {
content: '\f073';
}
.gp-theme #buddypress #object-nav #notifications-personal-li a:before,
.gp-theme.gp-fontawesome5 #buddypress #object-nav #notifications-personal-li a:before {
content: '\f0a2';
}
.gp-theme #buddypress #object-nav #messages-personal-li a:before,
.gp-theme.gp-fontawesome5 #buddypress #object-nav #messages-personal-li a:before {
content: '\f003';
}
.gp-theme #buddypress #object-nav #friends-personal-li a:before {
content: '\f234';
}
.gp-theme #buddypress #object-nav #groups-personal-li a:before {
content: '\f0c0';
}
.gp-theme #buddypress #object-nav #nav-forum-groups-li a:before,
.gp-theme #buddypress #object-nav #forums-personal-li a:before {
content: '\f27a';
}
.gp-theme #buddypress #object-nav #media-personal-li a:before {
content: '\f008';
}
.gp-theme #buddypress #object-nav #settings-personal-li a:before {
content: '\f013';
}
.gp-theme #buddypress #object-nav #home-groups-li a:before {
content: '\f015';
}
.gp-theme #buddypress #object-nav #members-groups-li a:before,
.gp-theme.gp-fontawesome5 #buddypress #object-nav #members-groups-li a:before {
content: '\f2c0';
}
.gp-theme #buddypress #object-nav #invite-groups-li a:before {
content: '\f0c0';
}
.gp-theme #buddypress #object-nav #media-groups-li a:before {
content: '\f008';
}
.gp-theme #buddypress #object-nav #admin-groups-li a:before {
content: '\f013';
}
.gp-theme #buddypress #object-nav #courses-personal-li a:before,
.gp-theme #buddypress #object-nav #nav-experiences-groups-li a:before {
content: '\f19d';
}

This code controls all the existing tabs. You can replace each icon code above with one of the icon codes here.

If you want to add icons to new tabs you need to use your browser inspector to right click on the icon, select Inspect/Inspect Element and find the ID of the tag.

And then add this ID to your CSS code.

.gp-theme #buddypress #object-nav #groups-personal-li a:before {
content: '\f03a';
}


64. 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.


65. How to change the membership circles image on the homepage?

Edit the page called "Home Original", and click the blue Backend Editor button to show the WPBakery Page Builder editor if you haven't done so already. 

Now follow the steps in the image below:

66. Adding WPBakery Page Builder editor to review templates

Step 1: Go to WPBakery Page Builder > Role Manager.

Step 2: From the Post types dropdown menu select "Custom" and check all the post types you want to show the page builder editor on, including "gpur-template" for review templates.

Step 3: Click Save Changes.

67. How do I display related posts based on categories instead of tags?

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

function ghostpool_related_posts_by_cats( $tags, $cats ) {
    return $cats;
}
add_filter( 'ghostpool_related_posts_type', 'ghostpool_related_posts_by_cats', 10, 2 );

68. 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;
    }
}

69. Can I display different widgets on different categories?

Yes you can do this using the "Display Widgets" WordPress plugin, which allows you to specify which posts, pages and/or categories individual widgets are displayed on.

70. How do I change the size of the videos in the lightbox?

You need to add the desired width and height to the video URL. For example for a YouTube video with the URL http://youtu.be/oeuHxC1cF0o you would add the following to the end of the URL &width=500&height=250 to give http://youtu.be/oeuHxC1cF0o&width=500&height=250. This will give you a video with a width of 500px and a height of 250px.

71. Adding shortcodes via custom fields

Go to Plugins > Add New and search for "Advanced Custom Fields". Install and activate this plugin.

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

function ghostpool_shortcode_meta( $value, $name ) {
    if ( get_field( $name ) ) {        
        return do_shortcode( get_field( $name ) );
    } else {        
        return $value;
    }
}
add_filter( 'ghostpool_post_meta_custom_field', 'ghostpool_shortcode_meta', 10, 2 );

Now you can use the Post Meta element. Set the Type setting to Custom Field and in the Custom Field Name give the name of the custom field you'll be adding your shortcode to.

On the desired post create a new custom field with the name you used above and the value as the shortcode.

72. 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!

73. How do I disable Google Fonts?

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

function ghostpool_disable_google_fonts_link() {
     return true;
}
add_filter( 'ghostpool_disable_google_fonts_link', 'ghostpool_disable_google_fonts_link' );


74. 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.


75. How can I order posts by views daily, weekly or monthly?

In your child theme's functions.php add:

function ghostpool_wpp_postviews( $post_id ) {
    
    // Accuracy:
    //   10  = 1 in 10 visits will update view count. (Recommended for high traffic sites.)
    //   30 = 30% of visits. (Medium traffic websites)
    //   100 = Every visit. Creates many db write operations every request.
    $accuracy = 50;
    if ( function_exists( 'wpp_get_views' ) && ( mt_rand( 0, 100 ) < $accuracy ) ) {
        update_post_meta( $post_id, 'views_total', wpp_get_views( $post_id ) );
        //update_post_meta( $post_id, 'views_daily', wpp_get_views( $post_id, 'daily' )  );
        //update_post_meta( $post_id, 'views_weekly', wpp_get_views( $post_id, 'weekly' ) );
        //update_post_meta( $post_id, 'views_monthly', wpp_get_views( $post_id, 'monthly' ) );
    }
}
function ghostpool_views_meta_key_func() {
    return 'views_weekly'
}
add_filter( 'ghostpool_views_meta_key' ,'ghostpool_views_meta_key_func' );

Uncomment the post meta field you want to use. To store the weekly views of posts use:

function ghostpool_wpp_postviews( $post_id ) {
    // Accuracy:
    //   10  = 1 in 10 visits will update view count. (Recommended for high traffic sites.)
    //   30 = 30% of visits. (Medium traffic websites)
    //   100 = Every visit. Creates many db write operations every request.
    $accuracy = 50;
    if ( function_exists( 'wpp_get_views' ) && ( mt_rand( 0, 100 ) < $accuracy ) ) {
        update_post_meta( $post_id, 'views_total', wpp_get_views( $post_id ) );
        //update_post_meta( $post_id, 'views_daily', wpp_get_views( $post_id, 'daily' )  );
        update_post_meta( $post_id, 'views_weekly', wpp_get_views( $post_id, 'weekly' ) );
        //update_post_meta( $post_id, 'views_monthly', wpp_get_views( $post_id, 'monthly' ) );
    }
}
function ghostpool_views_meta_key_func() {
    return 'views_weekly' // Replace with the field name you want to order by in filters
}
add_filter( 'ghostpool_views_meta_key' ,'ghostpool_views_meta_key_func' );

To update the new views data for each post find:

$accuracy = 50;

Replace with:

$accuracy = 100;

Now when each post is viewed by you or your visitors on the frontend it will update the views data.

You only need to do this step once. When you are done change the $accuracy value again.


76. 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>";

77. 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/

78. How to install the default Twenty-Twenty * themes?

You may want to install the default WordPress theme in order to see if an issue still occurs when switching themes. 

To install the default WordPress theme do the following:

  1. Go to the "Appearance" section on the left-hand side menu, and then click on "Themes". This will take you to the themes management page.
  2. At the top of the themes page, you'll see an option called "Add New". Click on it.
  3. In the "Add Themes" page, you'll see a search bar on the right - search for "Twenty Twenty Four".
  4. Hover over the theme and you'll see an "Install" button. Click on it to begin the installation process.
  5. After the installation is complete, you'll see an "Activate" button. Click on it to activate the theme on your WordPress site.

79. I get a "Warning: Cannot assign an empty string to a string offset" when installing the theme?

If you see the following warning after importing the demo content:

Warning: Cannot assign an empty string to a string offset in /.../wp-includes/class.wp-scripts.php on line 454

This is being caused by the rtMedia plugin. In your admin panel, click rtMedia tab and save the page. This will remove the warning from your site.

80. 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.


81. How can I remove the slider gradients?

Edit your homepage, scroll down to the FlexSlider Options panel where you can disable the Bottom Gradient Overlay and Side Gradient Overlay options.

Additionally you may want to disable the gradient coming from the header. To do this go to Theme Options > Styling > Page Header and disable Page Header Top Gradient Overlay.

82. 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.

83. Adding custom post/page options

To add your own option fields below posts/pages add the following to your child theme's functions.php file:

function ghostpool_custom_meta_boxes( $settings ) {
    
    $custom = array(
                        
        array( 
            'id' => 'gp_setting_id_2',
            'title' => esc_html__( 'Setting Name 1', 'ghostpool-core' ),
            'type' => 'text',
            'desc' => esc_html__( 'Description text 2.', 'ghostpool-core' ),
        ),
        array( 
            'id' => 'gp_setting_id_1',
            'title' => esc_html__( 'Setting Name 2', 'ghostpool-core' ),
            'type' => 'select',
            'desc' => esc_html__( 'Description text 2.', 'ghostpool-core' ),
            'options' => array(
                'option_1' => esc_html__( 'Option 1', 'ghostpool-core' ),
                'option_2' => esc_html__( 'Option 2', 'ghostpool-core' ),
                'option_3' => esc_html__( 'Option 3', 'ghostpool-core' ),
             ),
        ),
    
    );  
  
    $settings[] = array(
        'id' => 'gp-custom-settings',
        'title' => esc_html__( 'Custom Settings', 'aardvark' ),
        'post_types' => array( 'all' ),
        'exclude_post_types' => array( 'elementor_library', 'gp_theme_template' ),
        'position' => 'normal',
        'priority' => 'high',
        'section' => $custom
    );
    return $settings;
}
add_filter( 'ghostpool_metaboxes_settings', 'ghostpool_custom_meta_boxes' );

Replacing "gp_setting_id_1" and gp_setting_id_2 with your own IDs. Also change the title, field type and desc for each settings.

84. 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' );

85. BP Profile Search error: Form ID # is empty or nonexistent.

If you receive the following error message where your profile search form should be after importing on the demos please do the following:

  1. Go to Users > Profile Search and from the shortcode column copy the form ID e.g. [bps_form id=12345] would mean the form ID 12345

If the form is on your homepage:

  1. Edit the page and via the Backend editor (WPB editor).
  2. Click on the BP Profile Search element Pencil icon to open the edit window and replace the existing form ID with the one you just copied.

If the form is in a sidebar widget:

  1. Go to Appearance > Widgets and locate the BP Profile Search widget. 
  2. Select the form from the Form dropdown menu and click Update
  3. If it's already selected and you can't click Update, just edit the title of the widget and click Update.

86. 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.

87. "The link you followed has expired. Please try again." error

You are seeing this error because the theme is too big to be uploaded to your site. This is because your web host has set one of the following too low:

- PHP Memory Limit (should be 256MB or higher)

- Post Maximum Size (should be 64MB or higher)

- WordPress Upload Limit (should be 64MB or higher)

Follow the links for how to increase each of these values.

Alternatively you can upload the theme through an FTP client or file manager in your cPanel. To set up an FTP client refer to the WordPress documentation on this http://codex.wordpress.org/FTP_Clients.

Once you have set up your FTP client upload the aardvark theme folder to /wp-content/themes/ directory on your server.


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

To remove the decimal points from your ratings open lib/inc/ratings.php and lib/sections/user-rating-box.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 ) 

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 ) / 24 ) * 24 );

Find:

var position = ghostpool_rating.position;

Replace with:

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

Find:

position = e.offsetX + 4;

Replace with:

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

89. How do I change the colour and opacity of the dark gradients?

You can use CSS to override the default colour and opacity. Go to Theme Options > Styling and in the CSS Code box add:

.gp-top-bg-gradient-overlay {
background: -moz-linear-gradient(top, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.95)), color-stop(100%,rgba(0,0,0,0)));
background: -webkit-linear-gradient(top, rgba(0,0,0,0.95) 0%,rgba(0,0,0,0) 100%);
background: -o-linear-gradient(top, rgba(0,0,0,0.95) 0%,rgba(0,0,0,0) 100%);
background: -ms-linear-gradient(top, rgba(0,0,0,0.95) 0%,rgba(0,0,0,0) 100%);
background: linear-gradient(to bottom, rgba(0,0,0,0.95) 0%,rgba(0,0,0,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2000000', endColorstr='#00000000',GradientType=0 );
}

.gp-bottom-bg-gradient-overlay {
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.3)));
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.3) 100%);
background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.3) 100%);
background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.3) 100%);
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.3) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#99000000',GradientType=0 );
}

.gp-side-bg-gradient-overlay {
background: -moz-linear-gradient(left,  rgba(0,0,0,1) 0%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 80%, rgba(0,0,0,1) 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(0,0,0,1)), color-stop(20%,rgba(0,0,0,0)), color-stop(80%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,1)));
background: -webkit-linear-gradient(left,  rgba(0,0,0,1) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 80%,rgba(0,0,0,1) 100%);
background: -o-linear-gradient(left,  rgba(0,0,0,1) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 80%,rgba(0,0,0,1) 100%);
background: -ms-linear-gradient(left,  rgba(0,0,0,1) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 80%,rgba(0,0,0,1) 100%);
background: linear-gradient(to right,  rgba(0,0,0,1) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 80%,rgba(0,0,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 );
}

.gp-bg-overlay-dark {
background: rgba(0,0,0,0.8);
}

.gp-bg-overlay-light {
background: rgba(0,0,0,0.5);
}

90. 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.

91. What SEO plugin do you recommend?

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

92. 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.

93. 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%%

94. Using Hub Fields With Foreign Characters

If you're using a character set other than latin hub fields will not work by default. If you're using Cyrillic characters then you can use the following plugin https://wordpress.org/plugins/cyr3lat/, otherwise read below:

Go to Appearance > Editor and edit your child theme's functions.php file and add the following just before the last occurrence of ?>:

function ghostpool_hub_field_characters() {
    $char_table = array(
        'A' => 'a',
        'B' => 'b',
        'C' => 'c',
    );
    return $char_table;
}

Where "A" is your character and "a" is the equivalent latin character. Do this for all the letters in your alphabet.

Now your hub fields will use latin characters for the slugs but you will still use your character set when the field is shown on the site.

95. Ordering posts by views

If ordering posts by views the theme will order by daily views but you can also order by weekly, monthly and all time views. To do this activate the Magzine Child theme and in the child theme's functions.php file add:

function ghostpool_custom_views_order() {
    return 'views_weekly';
}
add_filter( 'ghostpool_most_views_meta_key', 'ghostpool_custom_views_order' );
add_filter( 'ghostpool_least_views_meta_key', 'ghostpool_custom_views_order' );

You can use: views_total, views_monthly views_weekly, views_daily

96. 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' );

97. Adding captcha to Login and Register forms

If you're using the theme's login/register pages or popup forms you can use one of the following plugins to add a captcha to help prevent spam logins/signups.

98. Changing the hub tab titles globally

In your Gauge child theme functions.php file add:

function ghostpool_new_tab_titles( $title, $hub_id ) {
    if ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'review-template.php' ) {
        $title = 'New Title';
    } elseif ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'news-template.php' ) {
        $title = 'New Title';
    } elseif ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'images-template.php' ) {
        $title = 'New Title';
    } elseif ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'videos-template.php' ) {
        $title = 'New Title';
    } elseif ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'write-a-review-template.php' ) {
        $title = 'New Title';
    } elseif ( get_post_meta( $hub_id, '_wp_page_template', true ) === 'user-reviews-template.php' ) {
        $title = 'New Title';
    }
    return $title;
    
}
add_filter( 'ghostpool_hub_tab_title', 'ghostpool_new_tab_titles', 10, 2 );

Replace each occurrence of "New Title" with the title you want for that tab.

99. Item loops using same images and links

Go to Elementor > Settings and set Element Caching to "Inactive". Now go to Elementor > Tools and click "Regenerate Files & Data".

100. How to change the homepage icons and colors

Step 1: Edit the homepage and click the Backend Editor button.

Step 2: Hover over one of the Custom Header elements and click the pencil icon to open the settings window.

Step 3: Scroll down to the Extra Class name field and replace:

fa-circle-o gp-green

With your own icon class and color class.

Available icon class are shown here: https://fontawesome.com/v4/cheatsheet/

Available color classes are:

gp-black, gp-blue, gp-dark-grey, gp-green, gp-light-grey, gp-orange, gp-white

101. Can I import more than one demo on my site?

Yes. You can import more than one demo on your site so you can use different pages and features from each demo. 

However, you can only use one set of theme options on your site. So if you import your first demo, this will import the theme options from that demo, which includes all the site colours, logo and typography. If you import another demo, the theme options from this demo will be used instead for all pages.

Options like page, header and footer layout can be changed on individual pages so these settings can be set to what you want if a demo import changes them for your existing pages.

102. How do I set up the bbPress forum like the demo?

The forums seen in the demo site are created using the bbPress plugin. Please install and activate this plugin from Plugins > Add New and search for "bbpress".

Once you've activated the plugin your forums should be located at http://my-domain.com/forums

To set up the forum layout seen in the theme demo you need to create category parents for each group of forums. For example on the demo forum (https://aardvark.ghostpool.com/original/forums/), "Forum Category 1" is a forum category and it has three child forums called "Forum 1", "Forum 2" and "Forum 3".

Go to Forums > New Forum to create a header and on the right hand side select "Category" from the Type dropdown menu.

To create a forum under this header go to Forums > New Forum and on the right hand side select "Forum" from the Type dropdown menu.

This is how the final setup should look:




103. Editing registration emails

If you are using BuddyPress then this plugin controls the registration emails not the theme. To change BuddyPress emails see: https://codex.buddypress.org/emails/

If you're not using BuddyPress you can add the following filters to your child theme's functions.php file:

// Change admin's registration notice email subject
function ghostpool_registration_notice_subject( $gp_blogname ) {
    return 'Hi [%s]';
}
add_filter( 'gp_registration_notice_subject', 'ghostpool_registration_notice_subject', 10, 5 );
// Change admin's registration notice email text
function ghostpool_registration_notice_message( $gp_message, $gp_blogname, $gp_user_login, $gp_user_email ) {
    $gp_message  = sprintf( esc_html__( 'New user registration on your blog %s:', 'gauge' ), $gp_blogname ) . "\r\n\r\n";
    $gp_message .= sprintf( esc_html__( 'Username: %s', 'gauge' ), $gp_user_login ) . "\r\n\r\n";
    $gp_message .= sprintf( esc_html__( 'Email: %s', 'gauge' ), $gp_user_email ) . "\r\n";
    return $gp_message;    
}
add_filter( 'gp_registration_notice_message', 'ghostpool_registration_notice_message', 10, 5 );
// Change user's email subject
function ghostpool_registered_user_subject( $gp_blogname ) {
    return 'Hi [%s]';
}
add_filter( 'gp_registered_user_subject', 'ghostpool_registered_user_subject', 10, 5 );
// Change user's email text
function ghostpool_registered_user_message( $gp_message, $gp_blogname, $gp_user_login, $gp_user_email ) {
    $gp_message  = esc_html__( 'Hi there,', 'gauge' ) . "\r\n\r\n";
    $gp_message .= sprintf( esc_html__( 'Welcome to %s.', 'gauge' ), $gp_blogname ) . "\r\n\r\n";
    $gp_message .= sprintf( esc_html__( 'Username: %s', 'gauge' ), $gp_user_login ) . "\r\n";
    $gp_message .= esc_html__( 'Password: [use the password you entered when signing up]', 'gauge' ) . "\r\n\r\n";
    $gp_message .= 'Please login at ' . home_url( '/#login' ) . "\r\n\r\n";    
    return $gp_message;    
}
add_filter( 'gp_registered_user_message', 'ghostpool_registered_user_message', 10, 5 );

104. 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.

105. 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.

106. 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.

107. 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.

108. 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.


109. How do I remove the shadows from my text?

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

.gp-page-header .gp-entry-title,
.gp-page-header .gp-subtitle {
text-shadow: none;
}

#gp-main-nav .menu > li > a {
text-shadow: none;
}

110. Comment form is not reloading after submitting comment

This will happen if you've added a Comment element to an end point tab. To fix this you also need to add a Comment element to the main page (your hub page tab). You can hide this Comment element by editing the Comment element, click the Advanced tab, under the Responsive toggle enable Hide option for all sizes.

111. Switching To Tablet and Mobile View in Elementor

In the Elementor editor in the bottom left hand corner click the Responsive Mode icon to change the display from desktop to tablet or mobile.

You can now change the styling for the display you've switched to and access elements that may have been hidden.

Also check out this video on how to use responsive editing in Elementor.


112. How do I edit the footer logo?

The logo in the footer is just an image inserted into the widget area in the footer.

To change or remove this logo go to Appearance > Widgets and click on the Footer 1 widget area. You will see a text widget which contains the logo code:

[vc_single_image image="3492" alignment="center" border_color="grey" img_link_target="_self" styling="margin-bottom: 0px;"]

You can replace this code with your own HTML image tag e.g.

<img src="http://domain/com/image-name.png" alt="" />

Alternatively go to Pages > Add New and insert the Single Image element into the page and change the settings to whatever you want for your footer logo. Switch to Classic Mode and click the Text tab and copy and paste this code in the Text widget.

113. How do I change the size of the WooCommerce images

Go to WooCommerce -> Settings -> Products and scroll down to "Product Image Sizes" and edit the cropping dimensions. After changing these settings you will need to regenerate your thumbnails by running the Regenerate Thumbnails plugin: http://wordpress.org/extend/plugins/regenerate-thumbnails

114. I would like a refund?

Before requesting a refund

If you're having any issues with a theme you've just purchased this can be incredibly frustrating, however in most cases the issues can be quickly resolved.

How to request a refund

If you have not yet downloaded the theme you can request a refund, no questions asked, from: https://themeforest.net/refund_requests/new

If you have downloaded the theme this means you now have a copy of the theme and will only be eligible for a refund if it meets one or more of the following criteria:

Refund process

Before I can issue a refund I need to determine that the theme is causing your issues (in most refund request cases, it turns out not to be).

To do this please open a support ticket at https://ghostpool.ticksy.com and describe your problems in as much detail as possible, providing any error messages you receive and the steps to replicate the problem.

If it does turn out to be a theme issue and I cannot fix it, you will be issued with a full refund.

Why a refund will not given

You will not receive a refund in the following situations:



115. After updating BuddyPress my website won't load or I get a fatal error?

If after updating to BuddyPress 12.1.1 your website won't load or you're getting a fatal error similar to this:

PHP Fatal error:  Uncaught Error: Call to undefined function bp_core_get_user_domain()

It is likely a conflict with bbPress or another BuddyPress compatible plugin. 

Install the BP Classic plugin to fix this issue.

116. 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.

117. 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


118. 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_custom_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( 'ghostpool_redux_metabox_options', 'ghostpool_custom_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_custom_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( 'ghostpool_redux_metabox_options', 'ghostpool_custom_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( 'ghostpool_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' ),

119. 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.


120. I do not receive emails from the contact form?

The are several reasons why you may not be receiving the emails: 1. Your emails are being sent to your spam/junk mail folder 2. You have entered the wrong email address in the contact form shortcode 3. Your web host does not allow you to send emails from the same address your are receiving the emails to 4. Your web host does not support PHPMail, you will need to contact them about this or switch hosts (I recommend DreamHosts) 5. Your web host (in most cases GoDaddy) does not allow contact forms to send emails to certain email providers (e.g. yahoo.com, hotmail.com etc), you will need to contact them about this or switch hosts (I recommend DreamHosts)

121. 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 to hide the admin bar for logged out users go to Settings > BuddyPress > Options and disable the Toolbar option.

122. Translating the months in release dates

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

function ghosptool_translate_months( $date ) {
    // Add all months you want translated
    $current_months = array( 'January', 'February', 'March', 'etc' );
    
    // Add all your translated months in same order with their counterparts
    $translated_months = array( 'Enero', 'Febero', 'Marzo', 'etc' );
    
    $translated_date = str_ireplace( $current_months, $translated_months, $date );
    return $translated_date;
}
add_filter( 'ghostpool_post_meta_release_date', 'ghosptool_translate_months' );

123. 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' );

124. 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.

125. I get a "Sorry, the content area was not found in your page" error

Go to GhostPool Core > Display Conditions and under Page Templates make sure you have a template set for the Entire Site condition. This template must contain the Post Content element so it loads the_content filter.

126. How can I edit and/or register new image sizes?

This theme uses WordPress's native image resize function add_image_size(). You can edit the theme's predefined image sizes by adding the following code to your child theme's functions.php file. You can change the image width, height and cropping options (including cropping position) for any of the image sizes. You will then need to run the Regenerate Thumbnails plugin after uploading these changes to recrop all your images to the new dimensions.

function ghostpool_image_sizes() {                
    add_theme_support( 'post-thumbnails' );
    add_image_size( 'ghostpool-featured-image', 780, 500, false );
    add_image_size( 'ghostpool-page-header-image', 1400, 596, true );
    add_image_size( 'ghostpool-related-image', 576, 356, true );
    add_image_size( 'ghostpool-col-category-image', 576, 356, true );
    add_image_size( 'ghostpool-one-col-category-image', 780, 500, true );
    add_image_size( 'ghostpool-list-category-image', 250, 135, true );
    add_image_size( 'ghostpool-image-tab', 231, 231, true );
    add_image_size( 'ghostpool-posts-widget-image', 100, 80, true );
    add_image_size( 'ghostpool-featured-box-large-image', 979, 438, true );
    add_image_size( 'ghostpool-featured-box-small-image', 639, 200, true );
    add_image_size( 'ghostpool-menu-image', 206, 127, true );
    add_image_size( 'ghostpool-rating-box-image', 730, 310, true );                    
}

Additionally, the GP Blog Posts widget and Blog Visual Composer element have an option to choose from one of the predefined image sizes. If you want to add your own image sizes to the selection, instead of changing a predefined image, copy the following code to your child theme's functions.php file and add your new image sizes as shown below:

function ghostpool_image_sizes() {                
    add_theme_support( 'post-thumbnails' );
    add_image_size( 'ghostpool-featured-image', 780, 500, false );
    add_image_size( 'ghostpool-page-header-image', 1400, 596, true );
    add_image_size( 'ghostpool-related-image', 576, 356, true );
    add_image_size( 'ghostpool-col-category-image', 576, 356, true );
    add_image_size( 'ghostpool-one-col-category-image', 780, 500, true );
    add_image_size( 'ghostpool-list-category-image', 250, 135, true );
    add_image_size( 'ghostpool-image-tab', 231, 231, true );
    add_image_size( 'ghostpool-posts-widget-image', 100, 80, true );
    add_image_size( 'ghostpool-featured-box-large-image', 979, 438, true );
    add_image_size( 'ghostpool-featured-box-small-image', 639, 200, true );
    add_image_size( 'ghostpool-menu-image', 206, 127, true );
    add_image_size( 'ghostpool-rating-box-image', 730, 310, true );  
    add_image_size( 'ghostpool-new-image-name-1', 100, 100, true ); // New image size
    add_image_size( 'ghostpool-new-image-name-2', 500, 900, false ); // New image size                     
}

127. Grey images when importing demo data

When you import that demo data the images seen on the demo site are not imported, instead plain grey images are imported. This is done for two reasons:

1) These images are copyrighted and not licensed for distribution.

2) These images would increase the size and execution time of the import dramatically making it more likely the import failing.

128. 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/

129. How do I remove specific entries from activity stream?

If you want to exclude certain activity entries from your activity stream add the following to your child theme's functions.php file:

function ghostpool_activity_dont_save( $activity_object ) {
    $exclude = array(
        'new_avatar',
        'new_member',
        'friendship_accepted',
        'friendship_created',
        'joined_group',
        'new_blog_comment',
        'bbp_topic_create',
        'bbp_reply_create',
    );
    if ( in_array( $activity_object->type, $exclude ) ) {
        $activity_object->type = false;
    }
    
}
add_action( 'bp_activity_before_save', 'ghostpool_activity_dont_save', 10, 1 );

You can change the type of entries you want to remove from the activity stream by editing the $exclude list.

130. 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.

131. How do I change the widget header background color?

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

.widget .widgettitle {
background-color: #000;
color: #fff;
margin-top: -20px;
padding-top: 15px;
border-radius: 4px 4px 0px 0px;
}

Replace #000 with the colour code you want to use.

132. Issues with Redux metaboxes extension on WordPress.com server

If you are using this theme on a WordPress.com server instead of a WordPress.org self hosted installation the Redux metaboxes extension generates the wrong URLs. To fix this add the following to your child theme's functions.php file:

function ghostpool_metaboxes_css_extension_url() {
    return get_template_directory_uri() . '/lib/framework/extensions/metaboxes/extension_metaboxes.css';
}
add_filter( "redux/metaboxes/OPTION/enqueue/redux-extension-metaboxes-css", 'ghostpool_metaboxes_css_extension_url' );
function ghostpool_metaboxes_js_extension_url() {
    return get_template_directory_uri() . '/lib/framework/extensions/metaboxes/extension_metaboxes.min.js';
}
add_filter( "redux/metaboxes/OPTION/enqueue/redux-extension-metaboxes-js", 'ghostpool_metaboxes_js_extension_url' ); 

Replacing OPTION with the following depending on the theme you are using:

Socialize: "socialize"

Huber: "ghostpool_huber"

Gauge: "gp"

133. Modifying Youzify BuddyPress pages

If you are using the Youzify plugin it will uses its own page templates and styling options for the BuddyPress pages. Exceptions include the registration and login pages.

If you want to use the theme's BuddyPress page templates and styling options you will either need to disable the Youzify plugin or modify the Youzify page templates.

You can do this by creating a directory called "youzify" inside your child theme folder and placing all the template files you want to change inside that folder (preserving directories structure).

So your directory will look something like this:

"/wp-content/themes/your-theme/youzify/"

Example:

Let’s say you want to customize some text on BuddyPress Members directory page, you will be copying the file index.php which is located here:

"\wp-content\plugins\youzify\includes\public\templates\members\index.php"

to here:

"/wp-content/themes/your-theme/youzify/members/index.php"

You will find all youzify templates on the path "youzify\includes\public\templates\"


134. How can I make the slider transition automatically?

Edit the page containing the slider (probably your homepage) and locate the slider shortcode e.g.

[slider timeout="0" margins="0,0,15,0"]

Change the "timeout" value of 0 to the number of seconds between slide transitions. So for 6 seconds between each slide it would look like this:

[slider timeout="6" margins="0,0,15,0"]

To view all the slider shortcode options see: http://buddywp.wpengine.com/features/shortcodes/#sc-sliders

135. Why are the Good and Bad Points not displaying on the page?

If you've added good and bad points, ratings, a summary or any of the other options in the page settings and you don't see them on the frontend this is because the template this page uses does not contain the relevant element. 

Below is an example of how to display the Good/Bad points on your page.

136. Creating BuddyPress Profile Menus

Step 1: Go to Appearance > Menus and create or edit an existing menu.

Step 2: Click the Screen Options tab in the top right corner of the page and make sure the BuddyPress Member option is checked.

Step 3: Now scroll down the page and you will see a BuddyPress tab where you can add BuddyPress profile links to your selected menu.

137. Using comment plugins such as Disqus

In order to use Disqus or other third party comment plugins you may need to disable the theme's own comment features. To do this go to Elementor > Settings > Advanced and disable the Theme Comment Features option.


138. 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.

139. I can't see the BuddyPress/bbPress pages?

1) Please ensure you have installed and activated the BuddyPress and bbPress plugins.

2) Go to Settings -> BuddyPress and click the Components tabs and enable "User Groups" and any other features you want to use.

3) Next click the Pages tab and ensure that each dropdown menu has a page selected - if a dropdown menu is empty either create a new page or select an existing page. You do not need to add anything to pages - just leave them empty.

4) If you imported the demo data the links to the BuddyPress pages may need to be edited. Go to Appearance > Menus, find the menu with the BuddyPress links and delete them and replace them with the correct pages.

140. 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' ) );

141. 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.

142. 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' );

143. 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.


144. 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".

145. 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.

146. 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.

147. 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.

148. Enabling the "BuddyPress Legacy" Template Pack

This theme requires that you enable the BuddyPress Legacy template pack. To do this go to Settings > BuddyPress > Options and from the Template Pack dropdown menu select "BuddyPress Legacy" and click Save Settings.

149. Updating WPBakery Page Builder with the theme

If a WPBakery Page Builder update is available you will see a notice in your dashboard. Unless you purchased the plugin separately you cannot update the plugin automatically. You will need to wait for a theme update to be released which will include the updated version of the WPBakery Page Builder which you can then update from Appearance > Install Plugins.

150. How do I restrict access to BuddyPress content?

You can use the Paid Membership Pro plugin to create membership levels, charge for access (or make it free) and restrict specific content. 

You'll also need to use the BuddyPress Add On to control access to specific BuddyPress content.

151. 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.

152. How do I change the width of the theme?

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

@media only screen and (min-width: 1461px) {

    .gp-boxed-layout #gp-page-wrapper,
    .gp-container {
    width: 1460px;
    }
    #gp-content {
    width: 1100px;
    }
    .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 1430px;
    }
    .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 1200px;
    }
    .gp-both-sidebars #gp-content {
    width: 780px;
    }
    .gp-sidebar {
    width: 300px;        
    }

}


@media only screen and (min-width: 1321px) {

    .gp-responsive.gp-boxed-layout #gp-page-wrapper,
    .gp-responsive .gp-container {
    width: 1320px;
    }
    .gp-responsive #gp-content {
    width: 960px;
    }
    .gp-responsive .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 1290px;
    }
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 1060px;
    }
    .gp-responsive.gp-both-sidebars #gp-content {
    width: 640px;
    }

}



@media only screen and (min-width: 1261px) {

    .gp-responsive.gp-boxed-layout #gp-page-wrapper,
    .gp-responsive .gp-container {
    width: 1260px;
    }
    .gp-responsive #gp-content {
    width: 900px;
    }
    .gp-responsive .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 1230px;
    }
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 1000px;
    }
    .gp-responsive.gp-both-sidebars #gp-content {
    width: 580px;
    }

}



@media only screen and (min-width: 1121px) {

    .gp-responsive.gp-boxed-layout #gp-page-wrapper,
    .gp-responsive .gp-container {
    width: 1120px;
    }
    .gp-responsive #gp-content {
    width: 760px;
    }
    .gp-responsive .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 1090px;
    }
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 860px;
    }
    .gp-responsive.gp-both-sidebars #gp-content {
    width: 480px;
    }    
    .gp-responsive.gp-both-sidebars .gp-sidebar {
    width: 280px;
    }    
    
}



@media only screen and (min-width: 1083px) {
    
    .gp-responsive.gp-boxed-layout #gp-page-wrapper,
    .gp-responsive .gp-container {
    width: 1082px;
    }
    .gp-responsive #gp-content {
    width: 722px;
    }
    .gp-responsive .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 1052px;
    }
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 822px;
    }
    .gp-responsive.gp-both-sidebars #gp-content {
    width: 722px;
    }
    .gp-responsive.gp-both-sidebars #gp-sidebar-right {
    width: 300px;
    }


}



@media only screen and (min-width: 1024px) { 


    .gp-responsive.gp-boxed-layout #gp-page-wrapper,
    .gp-responsive .gp-container {
    width: 1024px;
    }
    .gp-responsive #gp-content,
    .gp-responsive.gp-both-sidebars #gp-content {
    width: 664px;
    }
    .gp-responsive .gp-nav .menu li.gp-megamenu > .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .sub-menu,
    .gp-responsive .gp-nav .menu li.gp-content-menu .gp-inner-loop {
    width: 994px;
    }
    .gp-responsive .gp-nav .menu li.gp-tab-content-menu .gp-inner-loop {
    width: 764px;
    }    
    
}

Change the widths for each media query to the desired values.

153. How do I show inactive members in my BuddyPress members directory?

For current members:

BuddyPress will only show users in the members directory if they have  logged into to their account. You can get around this and activate all user accounts by installing and activating the Retroactive BP User Activity plugin.

If this doesn't work add the following to your child theme functions.php file:

update_metadata( 'user', '', 'last_activity', date( 'Y-m-d H:i:s' ) );

Remove this code once it has updated the last activity date for all members (when all members are shown on your members page).

For new members that register:

To automatically update new members in the members directory add the following to your child theme functions.php file:

function ghostpool_show_all_bp_members( $user_id ) {
    add_user_meta( $user_id, 'last_activity', date( 'Y-m-d H:i:s' ) );
}
add_action( 'bp_core_activated_user', 'ghostpool_show_all_bp_members' );


154. 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.

155. 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.

156. Creating a clickable page background

You will need to copy header.php from your parent theme to your child theme and then edit the file. 

Find:

<body>

Below this add:

<a href="https://your-link.com" target="_blank" class="gp-takeover"></a>

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

.gp-takeover {     
position: absolute;     
display: block;     
width: 100%;     
height: 100%;     
z-index: 1;     
cursor: pointer; 
}
.gp-site-wrapper {     
position: relative;     
z-index: 999; 
}

157. 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.

158. 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

159. How do I set Web Hosting details?

The web hosting details display on the right is generated from custom fields. To add/edit/delete these custom fields on your posts see:

How to add custom fields

Now you can use the following custom field names and set the values to whatever you want to display.


160. Theme and Youzify login forms

The theme comes with its own popup login form. You can enable this from Aardvark > Theme Options > Membership > Frontend Popup Form.

If you are using Youzify and have their membership system enabled, the theme's login form is disabled as the two membership systems conflict.

You can disable Youzify membership system from Youzify Panel > General Settings > Activate Membership System.

If you want to use Youzify membership system you can enable their popup login form from Youzify > Membership Settings > Login Settings > Enable Login Popup.

161. My page(s) look weird?

This is probably because you have:

<code></code>

Or:

<pre></pre>

tags within your page text boxes. Edit your pages, switch to the Text/HTML tab and remove all occurrences of these tags.

162. 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.

163. 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.