0
Validation results

TownPress

TownPress

WordPress 4.9 theme
0
Critical alerts
  1. Presence of iframes : iframes are sometimes used to load unwanted adverts and malicious code on another site Found <iframe style="border: 0;" src="https://www.google.com/maps/embed?pb=!1m0!3m2!1sen!2ssk!4v1430820134791!6m8!1m7!1sAa53m4vtQ-d5AhQQT_q_Kw!2m2!1d44.465412!2d-72.686862!3f94.02068332918009!4f-2.585731872959286!5f0.7820865974627469" width="600" height="450"> in file virtual-tour.php.
    Line 4: 'content' => '[vc_row][vc_column][vc_column_text]<iframe style='border: 0;' src='https://www.google.com/maps/embed?pb=!1m0!3
  2. Malware : Operations on file system file_get_contents was found in the file local-weather.php
    Line 40: $json = file_get_contents( $cache_file );
    fopen was found in the file local-weather.php
    Line 54: $fp = fopen( $cache_file, 'wb' );
    fwrite was found in the file local-weather.php
    Line 55: fwrite( $fp, $json );
    fclose was found in the file local-weather.php
    Line 56: fclose( $fp );
    file_get_contents was found in the file parsers.php
    Line 66: $success = $dom->loadXML( file_get_contents( $file ) );
    Line 269: if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
    file_get_contents was found in the file parsers.php
    Line 66: $success = $dom->loadXML( file_get_contents( $file ) );
    Line 269: if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
    fopen was found in the file parsers.php
    Line 415: $fp = $this->fopen( $file, 'r' );
    Line 641: function fopen( $filename, $mode = 'r' ) {
    Line 644: return fopen( $filename, $mode );
    fclose was found in the file parsers.php
    Line 464: $this->fclose($fp);
    Line 659: function fclose( $fp ) {
    Line 662: return fclose( $fp );
    fopen was found in the file parsers.php
    Line 415: $fp = $this->fopen( $file, 'r' );
    Line 641: function fopen( $filename, $mode = 'r' ) {
    Line 644: return fopen( $filename, $mode );
    fopen was found in the file parsers.php
    Line 415: $fp = $this->fopen( $file, 'r' );
    Line 641: function fopen( $filename, $mode = 'r' ) {
    Line 644: return fopen( $filename, $mode );
    fclose was found in the file parsers.php
    Line 464: $this->fclose($fp);
    Line 659: function fclose( $fp ) {
    Line 662: return fclose( $fp );
    fclose was found in the file parsers.php
    Line 464: $this->fclose($fp);
    Line 659: function fclose( $fp ) {
    Line 662: return fclose( $fp );
    file_get_contents was found in the file radium-importer.php
    Line 263: $data = file_get_contents( $file );
    Line 338: $data = file_get_contents( $file );
    file_get_contents was found in the file radium-importer.php
    Line 263: $data = file_get_contents( $file );
    Line 338: $data = file_get_contents( $file );
    file_get_contents was found in the file options-config.php
    Line 1844: 'content'   => file_get_contents(dirname(__FILE__) . '/../README.md')
    Line 1886: 'content'   => nl2br(file_get_contents(trailingslashit(dirname(__FILE__)) . 'README.html'))
    file_get_contents was found in the file options-config.php
    Line 1844: 'content'   => file_get_contents(dirname(__FILE__) . '/../README.md')
    Line 1886: 'content'   => nl2br(file_get_contents(trailingslashit(dirname(__FILE__)) . 'README.html'))
  3. Admin menu : Themes should use add_theme_page() for adding admin pages. File tgm-plugin-activation.class.php :
    Line 646: $this->page_hook = call_user_func( 'add_{$type}_page', $args['parent_slug'], $args['page_title'], $args['menu_t
    File options-config.php :
    Line 1944: 'page_parent'       => 'themes.php',            // For a full list of options, visit: http://codex.wordpress.org/Function_Reference/add_submenu_page#Parameters
  4. Deprecated functions : wp_get_http wp_get_http found in file wordpress-importer.php. Deprecated since version 4.4. Use WP_Http instead.
    Line 905: $headers = wp_get_http( $url, $upload['file'] );
  5. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was lsvr-toolkit-townpress.zip redux-framework.zip js_composer.zip.
Warning
  1. core scripts deregistered : Core scripts deregistrationFound wp_deregister_script in extension_metaboxes.php. Themes must not deregister core scripts.
    Line 368: wp_deregister_script( 'jquery-qtip' );
  2. theme tags : Presence of bad theme tagsThe tag responsive-layout has been deprecated, it must be removed from style.css header.
  3. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Begin installing plugin', 'Begin installing plugins' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Begin activating plugin', 'Begin activating plugins' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'Current theme preview' in file options-config.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'Current theme preview' in file options-config.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'This <a href="%1$s">child theme</a> requires its parent theme, %2$s.' in file options-config.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 lsvrtheme, tgmpa, redux-framework, wordpress-importer, radium, framework.
  4. Unwanted files : hidden file(s) or folder(s).ds_store was found.
  5. Custom elements : Presence of custom headerNo reference to custom header was found in the theme.
  6. Custom elements : Presence of custom backgroundNo reference to custom background was found in the theme.
  7. Editor style : Presence of editor styleNo reference to add_editor_style() was found in the theme. It is recommended that the theme implements editor styling, so as to make the editor content match the resulting post output in the theme, for a better user experience.
  8. Featured image : Use of the_post_thumbnail() instead of custom fields for thumbnailsNo reference to the_post_thumbnail was found in the theme.
  9. Screenshot : Screenshot fileScreenshot size is 880x660px. Screenshot size should be 1200x900, to account for HiDPI displays. Any 4:3 image size is acceptable, but 1200x900 is preferred.Bad screenshot file extension ! File screenshot.png is not an actual JPG file. Detected type was : "image/png".
Tip-off
  1. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  2. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  3. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  4. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.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 author template file author.phpThis theme does not contain optional file author.php.
  8. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  9. Optional files : Presence of archive template file archive.phpThis theme does not contain optional file archive.php.
  10. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  11. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  12. Use of includes : Use of include or requireThe theme appears to use include or require : visual-composer-settings.php
    Line 1: <?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
    Line 79: $template = include( dirname( __FILE__ ) . '/../components/visualcomposer/layouts/' . $
    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 : extension_multi_media.php
    Line 78: //include_once($this->extension_dir . 'multi-media/inc/class.customizer.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 : field_repeater.php
    Line 410: require_once( $class_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.
    The theme appears to use include or require : options-config.php
    Line 83: require_once( ABSPATH .'/wp-admin/includes/file.php' );
    Line 229: require_once(ABSPATH . '/wp-admin/includes/file.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 : loader.php
    Line 20: require_once( $class_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 ).

54
Critical alerts
  1. Deprecated functions : wp_get_http wp_get_http found in file wordpress-importer.php. Deprecated since version 4.4. Use WP_Http instead.
    Line 905: $headers = wp_get_http( $url, $upload['file'] );
  2. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was lsvr-toolkit-townpress.zip redux-framework.zip js_composer.zip.
Warning
  1. core scripts deregistered : Core scripts deregistrationFound wp_deregister_script in extension_metaboxes.php. Themes must not deregister core scripts.
    Line 368: wp_deregister_script( 'jquery-qtip' );
  2. theme tags : Presence of bad theme tagsThe tag responsive-layout has been deprecated, it must be removed from style.css header.
  3. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Begin installing plugin', 'Begin installing plugins' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Begin activating plugin', 'Begin activating plugins' in file tgm-plugin-settings.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'Current theme preview' in file options-config.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'Current theme preview' in file options-config.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'This <a href="%1$s">child theme</a> requires its parent theme, %2$s.' in file options-config.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 lsvrtheme, tgmpa, redux-framework, wordpress-importer, radium, framework.
  4. Unwanted files : hidden file(s) or folder(s).ds_store was found.
  5. Featured image : Use of the_post_thumbnail() instead of custom fields for thumbnailsNo reference to the_post_thumbnail was found in the theme.
  6. Screenshot : Screenshot fileScreenshot size is 880x660px. Screenshot size should be 1200x900, to account for HiDPI displays. Any 4:3 image size is acceptable, but 1200x900 is preferred.Bad screenshot file extension ! File screenshot.png is not an actual JPG file. Detected type was : "image/png".
Tip-off
  1. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  2. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  3. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  4. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.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 author template file author.phpThis theme does not contain optional file author.php.
  8. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  9. Optional files : Presence of archive template file archive.phpThis theme does not contain optional file archive.php.
  10. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  11. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  12. Use of includes : Use of include or requireThe theme appears to use include or require : visual-composer-settings.php
    Line 1: <?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
    Line 79: $template = include( dirname( __FILE__ ) . '/../components/visualcomposer/layouts/' . $
    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 : extension_multi_media.php
    Line 78: //include_once($this->extension_dir . 'multi-media/inc/class.customizer.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 : field_repeater.php
    Line 410: require_once( $class_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.
    The theme appears to use include or require : options-config.php
    Line 83: require_once( ABSPATH .'/wp-admin/includes/file.php' );
    Line 229: require_once(ABSPATH . '/wp-admin/includes/file.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 : loader.php
    Line 20: require_once( $class_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