76
Validation results

Bundler

Bundler

WordPress 4.8.2 theme
76
Critical alerts
  1. Malware : Operations on file system fopen was found in the file parsers_pmc.php
    Ligne425: //$fp = $this->fopen( $file, 'r' );
    file_put_contents was found in the file admin-functions.php
    Ligne69: function generate_options_css($newdata) {
    
    	$pmc_data = $newdata;
    
    	$css_dir = get_stylesheet_directory() . '/css/'; // Shorten code, save 1 call
    
    	ob_start(); // Capture all output (output buffering)
    
    	require($css_dir . 'style_options.php'); // Generate CSS
    
    	$css = ob_get_clean(); // Get generated CSS (output buffering)
    	
    
        wp_enqueue_style( 'style', get_template_directory_uri() . '/style.css' );
        wp_add_inline_style( 'style', $css );
    
    
    
    	//file_put_contents($css_dir . 'options.css', $css, LOCK_EX); // Save it
    
    }
    
    
Warning
  1. Custom elements : Presence of custom headerNo reference to custom header was found in the theme.
  2. Custom elements : Presence of custom backgroundNo reference to custom background was found in the theme.
  3. 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.
  4. 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. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file admin-interface.php.
    Ligne131: This is lite vesrion of the theme <a href='https://premiumcoding.com/wordpress-themes/bundler-wordpress-theme/'>Bundle
    Ligne143: <a class='buy-freya button' title = 'Click to check out the Premium Version' href ='https://premiumcoding.com/wordpress-themes/bundler-wordpress-theme/' target
    Ligne621: slidesContainer.append('<li><div class='slide_header'><strong>Social Icons ' + newNum + '</strong><input type='hidden' class='slide of-input order' name='' + sliderId + '[' + newNum + '][order]' id='' + sliderId + '_slide_order-' + newNum + '' value='' + newNum + ''><a class='slide_edit_button' href='#'>Edit</a></div><div class='slide_body' style='display: none; '><label>Social alt text</label><input class='slide of-input of-slider-title' name='' + sliderId + '[' + newNum + '][title]' id='' + sliderId + '_' + newNum + '_slide_title' value=''><label>Icon <a href='http://fortawesome.github.io/Font-Awesome/icons/' target='_blank'>Font Awes
    Ligne1820: $slider .= '<label>Icon <a href='http://fortawesome.github.io/Font-Awesome/icons/' target='_blank'>Font Awes
    Ligne621: slidesContainer.append('<li><div class='slide_header'><strong>Social Icons ' + newNum + '</strong><input type='hidden' class='slide of-input order' name='' + sliderId + '[' + newNum + '][order]' id='' + sliderId + '_slide_order-' + newNum + '' value='' + newNum + ''><a class='slide_edit_button' href='#'>Edit</a></div><div class='slide_body' style='display: none; '><label>Social alt text</label><input class='slide of-input of-slider-title' name='' + sliderId + '[' + newNum + '][title]' id='' + sliderId + '_' + newNum + '_slide_title' value=''><label>Icon <a href='http://fortawesome.github.io/Font-Awesome/icons/' target='_blank'>Font Awes
    Ligne1820: $slider .= '<label>Icon <a href='http://fortawesome.github.io/Font-Awesome/icons/' target='_blank'>Font Awes
  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 term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  6. Optional files : Presence of author template file author.phpThis theme does not contain optional file author.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 archive template file archive.phpThis theme does not contain optional file archive.php.
  9. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  10. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  11. Use of includes : Use of include or requireThe theme appears to use include or require : header.php
    Ligne69: 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 : theme-updater-admin.php
    Ligne83: include( dirname( __FILE__ ) . '/theme-updater-class.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-updater.php
    Ligne10: include( dirname( __FILE__ ) . '/theme-updater-admin.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 : parsers_pmc.php
    Ligne71: require_once(ABSPATH . 'wp-admin/includes/file.php');
    Ligne276: require_once(ABSPATH . 'wp-admin/includes/file.php');
    Ligne426: 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 : options-importer.php
    Ligne4: 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 : class-widget-data.php
    Ligne85: require_once(ABSPATH . 'wp-admin/includes/file.php');
    Ligne124: 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 : admin-interface.php
    Ligne83: include( dirname(dirname( __FILE__ )) . '/updater/theme-updater-admin.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 : admin-functions.php
    Ligne69: function generate_options_css($newdata) {
    
    	$pmc_data = $newdata;
    
    	$css_dir = get_stylesheet_directory() . '/css/'; // Shorten code, save 1 call
    
    	ob_start(); // Capture all output (output buffering)
    
    	require($css_dir . 'style_options.php'); // Generate CSS
    
    	$css = ob_get_cl
    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