13
Validation results

GoodLife

GoodLife

WordPress 4.8.1 theme
13
Critical alerts
  1. Security breaches : Modification of PHP server settings Found ini_set in file OneClickDemoImport.php.
    Line 207: ini_set( 'memory_limit', apply_filters( 'pt-ocdi/import_memory_limit', '350
  2. Admin menu : Themes should use add_theme_page() for adding admin pages. File OneClickDemoImport.php :
    Line 138: $this->plugin_page = add_submenu_page(
    File fuelthemes.php :
    Line 558: add_menu_page( Thb_Theme_Admin::$thb_theme_name, Thb_Theme_Admin::$thb_them
    File fuelthemes.php :
    Line 561: add_submenu_page( 'thb-product-registration', 'Registration', 'Registration
    Line 564: add_submenu_page( 'thb-product-registration', 'Plugins', 'Plugins', 'edit_t
    Line 567: add_submenu_page( 'thb-product-registration', 'Demo Import', 'Demo Import',
    Line 570: add_submenu_page( 'thb-product-registration', 'Theme Options', 'Theme Optio
    File fuelthemes.php :
    Line 561: add_submenu_page( 'thb-product-registration', 'Registration', 'Registration
    Line 564: add_submenu_page( 'thb-product-registration', 'Plugins', 'Plugins', 'edit_t
    Line 567: add_submenu_page( 'thb-product-registration', 'Demo Import', 'Demo Import',
    Line 570: add_submenu_page( 'thb-product-registration', 'Theme Options', 'Theme Optio
    File fuelthemes.php :
    Line 561: add_submenu_page( 'thb-product-registration', 'Registration', 'Registration
    Line 564: add_submenu_page( 'thb-product-registration', 'Plugins', 'Plugins', 'edit_t
    Line 567: add_submenu_page( 'thb-product-registration', 'Demo Import', 'Demo Import',
    Line 570: add_submenu_page( 'thb-product-registration', 'Theme Options', 'Theme Optio
    File fuelthemes.php :
    Line 561: add_submenu_page( 'thb-product-registration', 'Registration', 'Registration
    Line 564: add_submenu_page( 'thb-product-registration', 'Plugins', 'Plugins', 'edit_t
    Line 567: add_submenu_page( 'thb-product-registration', 'Demo Import', 'Demo Import',
    Line 570: add_submenu_page( 'thb-product-registration', 'Theme Options', 'Theme Optio
  3. Hidden admin bar : Hidden admin Bar Themes should not hide admin bar. Detected in file : fuelthemes.php.
  4. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was codecanyon-242431-visual-composer-page-builder-for-wordpress-wordpress-plugin.zip.
Warning
  1. Text domain : Incorrect use of translation functions.Wrong installation directory for the theme name. The directory name must match the slug of the theme. This theme's correct slug and text-domain is goodlife.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function __, with the arguments 'Cannot import auto-draft posts' in file src/WXRImporter.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Skipping attachment "%s", fetching attachments disabled' in file src/WXRImporter.php.Found a translation function that is missing a text-domain. Function esc_html__, with the arguments in file misc.php.More than one text-domain is being used in this theme. This means the theme will not be compatible with WordPress.org language packs. The domains found are goodlife, pt-ocdi, wordpress-importer, tgmpa, option-tree.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the register_taxonomy() function, which is plugin-territory functionality.
  4. Custom elements : Presence of custom headerNo reference to custom header was found in the theme.
  5. I18N implementation : Proper use of ___all(Possible variable $category found in translation function in misc.php. Translation function calls should not contain PHP variables.
    Line 183: <li><a href='<?php echo esc_url(get_category_link($category->cat_ID)); ?>' title='<?php echo esc_attr($category->name); ?>'<?php if ($ajax) { ?> data-ajax-cat='<?php echo esc_attr($category->cat_ID); ?>'<?php } ?>><?php echo esc_html__($category->name); ?></a></li>
  6. I18N implementation : Proper use of esc_html___all(Possible variable $category found in translation function in misc.php. Translation function calls should not contain PHP variables.
    Line 183: <li><a href='<?php echo esc_url(get_category_link($category->cat_ID)); ?>' title='<?php echo esc_attr($category->name); ?>'<?php if ($ajax) { ?> data-ajax-cat='<?php echo esc_attr($category->cat_ID); ?>'<?php } ?>><?php echo esc_html__($category->name); ?></a></li>
  7. Screenshot : Screenshot fileScreenshot size is 600x450px. Screenshot size should be 1200x900, to account for HiDPI displays. Any 4:3 image size is acceptable, but 1200x900 is preferred.
Tip-off
  1. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file Helpers.php.
    Line 318: '<a href='http://gregorcapuder.com/wordpress-how-to-set-direct-filesystem-method/' ta
    Possible hard-coded links were found in the file ot-themeoptions.php.
    Line 507: 'desc'        => esc_html__('Would you like to display the language switcher in the sub-header? <small>Requires that you have WPML installed. <a href='https://wpml.org/?aid=85928&affiliate_key=PIP3XupfKQOZ'>You can purchase WP
    Line 876: 'desc'        => esc_html__('Please enter the Google Maps Api Key. <small>You need to create a browser API key. For more information, please visit: <a href='https://developers.google.com/maps/documentation/javascript/get-api-key'>ht
    Line 909: 'desc'        => esc_html__('Facebook Page ID, you can use <a href='http://findmyfbid.com/' target='_blank'>this page</a> to find your id', 'go
    Line 923: 'desc'        => esc_html__('Facebook Application ID, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 930: 'desc'        => esc_html__('Facebook Application Secret, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 923: 'desc'        => esc_html__('Facebook Application ID, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 930: 'desc'        => esc_html__('Facebook Application Secret, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 998: 'desc'        => esc_html__('Your Instagram ID, you can find your ID from here: <a href='http://www.otzberg.net/iguserid/'>http://www.otzberg.net/iguserid/</a>', 'g
    Line 1012: 'desc'        => esc_html__('Visit <a href='http://instagr.am/developer/register/'>this link</a> in a new tab, sign in 
    Line 1039: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1077: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1039: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1077: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Possible hard-coded links were found in the file ot-radioimages.php.
    Line 121: return __('<a href='http://fuelthemes.net'>Fuel Themes</a>', 'goodlife');
    Line 132: echo '<li class='theme_link'><a href='http://fuelthemes.ticksy.com/' target='_blank'>Support Forum</a></li>';
    Line 133: echo '<li class='theme_link right'><a href='http://wpeng.in/fuelt/' target='_blank'>Recommended Hosting</a></li>';
    Line 134: echo '<li class='theme_link right'><a href='https://wpml.org/?aid=85928&affiliate_key=PIP3XupfKQOZ' target='_blank'>Pur
    Possible hard-coded links were found in the file visualcomposer-extend.php.
    Line 256: 'description' => esc_html__( 'Paste the style code here. Browse map styles in <a href='https://snazzymaps.com/' target='_blank'>SnazzyMaps</a>', 'goodlife' )
    Line 294: 'description'    => esc_html__( 'Enter latitude coordinate. To select map coordinates <a href='http://www.latlong.net/convert-address-to-lat-long.html' target='_blank'>cl
  2. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  3. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  4. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  5. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  6. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  7. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  8. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  9. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  10. Use of includes : Use of include or requireThe theme appears to use include or require : posts-share-count.php
    Line 55: require_once 'functions.php';
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : CustomizerImporter.php
    Line 186: require_once( ABSPATH . 'wp-admin/includes/media.php' );
    Line 187: require_once( ABSPATH . 'wp-admin/includes/file.php' );
    Line 188: require_once( ABSPATH . 'wp-admin/includes/image.php' );
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : header.php
    Line 7: <?php include 'tabs.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : plugins.php
    Line 2: <?php include 'header.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : registration.php
    Line 2: <?php include 'header.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : demo-import.php
    Line 2: <?php include 'header.php'; ?>
    Line 20: include 'requirements.php'; 
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : ot-functions-docs-page.php
    Line 751: require( trailingslashit( get_template_directory() ) . \'includes/meta-boxe
    Line 834: require( trailingslashit( get_template_directory() ) . \'option-tree/ot-loa
    Line 851: require( trailingslashit( get_template_directory() ) . \'includes/theme-opt
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : ot-loader.php
    Line 552: require( $file );
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.

This is a ThemeForest theme. Since Themeforest items are all checked by a human before they appear on their website, ThemeForest verification rules are more permissive than themecheck's and can give a better verification score ( Themeforest requirements ).

36
Critical alerts
  1. Security breaches : Modification of PHP server settings Found ini_set in file OneClickDemoImport.php.
    Line 207: ini_set( 'memory_limit', apply_filters( 'pt-ocdi/import_memory_limit', '350
  2. Hidden admin bar : Hidden admin Bar Themes should not hide admin bar. Detected in file : fuelthemes.php.
  3. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was codecanyon-242431-visual-composer-page-builder-for-wordpress-wordpress-plugin.zip.
Warning
  1. Text domain : Incorrect use of translation functions.Wrong installation directory for the theme name. The directory name must match the slug of the theme. This theme's correct slug and text-domain is goodlife.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function __, with the arguments 'Cannot import auto-draft posts' in file src/WXRImporter.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Skipping attachment "%s", fetching attachments disabled' in file src/WXRImporter.php.Found a translation function that is missing a text-domain. Function esc_html__, with the arguments in file misc.php.More than one text-domain is being used in this theme. This means the theme will not be compatible with WordPress.org language packs. The domains found are goodlife, pt-ocdi, wordpress-importer, tgmpa, option-tree.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the register_taxonomy() function, which is plugin-territory functionality.
  4. Screenshot : Screenshot fileScreenshot size is 600x450px. Screenshot size should be 1200x900, to account for HiDPI displays. Any 4:3 image size is acceptable, but 1200x900 is preferred.
Tip-off
  1. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file Helpers.php.
    Line 318: '<a href='http://gregorcapuder.com/wordpress-how-to-set-direct-filesystem-method/' ta
    Possible hard-coded links were found in the file ot-themeoptions.php.
    Line 507: 'desc'        => esc_html__('Would you like to display the language switcher in the sub-header? <small>Requires that you have WPML installed. <a href='https://wpml.org/?aid=85928&affiliate_key=PIP3XupfKQOZ'>You can purchase WP
    Line 876: 'desc'        => esc_html__('Please enter the Google Maps Api Key. <small>You need to create a browser API key. For more information, please visit: <a href='https://developers.google.com/maps/documentation/javascript/get-api-key'>ht
    Line 909: 'desc'        => esc_html__('Facebook Page ID, you can use <a href='http://findmyfbid.com/' target='_blank'>this page</a> to find your id', 'go
    Line 923: 'desc'        => esc_html__('Facebook Application ID, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 930: 'desc'        => esc_html__('Facebook Application Secret, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 923: 'desc'        => esc_html__('Facebook Application ID, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 930: 'desc'        => esc_html__('Facebook Application Secret, available <a href='https://developers.facebook.com/apps/' target='_blank'>here</a>', 'goodlife
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 957: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 964: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 971: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 978: 'desc'        => esc_html__('Visit <a href='https://dev.twitter.com/apps'>this link</a> in a new tab, sign in with your
    Line 998: 'desc'        => esc_html__('Your Instagram ID, you can find your ID from here: <a href='http://www.otzberg.net/iguserid/'>http://www.otzberg.net/iguserid/</a>', 'g
    Line 1012: 'desc'        => esc_html__('Visit <a href='http://instagr.am/developer/register/'>this link</a> in a new tab, sign in 
    Line 1039: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1077: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1039: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Line 1077: 'desc'        => esc_html__('Visit <a href='https://console.developers.google.com/project'>https://console.developers.g
    Possible hard-coded links were found in the file ot-radioimages.php.
    Line 121: return __('<a href='http://fuelthemes.net'>Fuel Themes</a>', 'goodlife');
    Line 132: echo '<li class='theme_link'><a href='http://fuelthemes.ticksy.com/' target='_blank'>Support Forum</a></li>';
    Line 133: echo '<li class='theme_link right'><a href='http://wpeng.in/fuelt/' target='_blank'>Recommended Hosting</a></li>';
    Line 134: echo '<li class='theme_link right'><a href='https://wpml.org/?aid=85928&affiliate_key=PIP3XupfKQOZ' target='_blank'>Pur
    Possible hard-coded links were found in the file visualcomposer-extend.php.
    Line 256: 'description' => esc_html__( 'Paste the style code here. Browse map styles in <a href='https://snazzymaps.com/' target='_blank'>SnazzyMaps</a>', 'goodlife' )
    Line 294: 'description'    => esc_html__( 'Enter latitude coordinate. To select map coordinates <a href='http://www.latlong.net/convert-address-to-lat-long.html' target='_blank'>cl
  2. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  3. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  4. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  5. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  6. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  7. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  8. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  9. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  10. Use of includes : Use of include or requireThe theme appears to use include or require : posts-share-count.php
    Line 55: require_once 'functions.php';
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : CustomizerImporter.php
    Line 186: require_once( ABSPATH . 'wp-admin/includes/media.php' );
    Line 187: require_once( ABSPATH . 'wp-admin/includes/file.php' );
    Line 188: require_once( ABSPATH . 'wp-admin/includes/image.php' );
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : header.php
    Line 7: <?php include 'tabs.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : plugins.php
    Line 2: <?php include 'header.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : registration.php
    Line 2: <?php include 'header.php'; ?>
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : demo-import.php
    Line 2: <?php include 'header.php'; ?>
    Line 20: include 'requirements.php'; 
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : ot-functions-docs-page.php
    Line 751: require( trailingslashit( get_template_directory() ) . \'includes/meta-boxe
    Line 834: require( trailingslashit( get_template_directory() ) . \'option-tree/ot-loa
    Line 851: require( trailingslashit( get_template_directory() ) . \'includes/theme-opt
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : ot-loader.php
    Line 552: require( $file );
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
Other checked themes