0
Validation results

Kalium

Kalium

WordPress 4.9.7 theme
0
Critical alerts
  1. Title : Title The <title> tags can only contain a call to wp_title(). Use the wp_title filter to modify the output.
  2. Security breaches : Modification of PHP server settings Found ini_set in file Less.php.
    Line 173: @ini_set('precision',16);
    Line 211: @ini_set('precision',$precision);
    Line 471: @ini_set('mbstring.internal_encoding', 'ascii');
    Line 478: @ini_set('mbstring.internal_encoding', $mb_internal_encoding);
    Found ini_set in file laborator_functions.php.
    Line 1018: @ini_set( 'memory_limit', '256M' );
  3. Security breaches : Use of base64_decode() Found base64_decode in file lab_google_map.php.
    Line 37: $map_style_b64dec = rawurldecode( base64_decode( strip_tags( $map_style ) ) );
    Line 46: } elseif ( base64_decode( $map_style ) ) {
    Found base64_decode in file laborator_demo_content_importer.php.
    Line 516: $smof_data = unserialize(base64_decode($theme_options));
    Line 553: $custom_css_options = json_decode(base64_decode($custom_css));
    Found base64_decode in file functions.interface.php.
    Line 231: $smof_data = unserialize(base64_decode($_POST['data'])); //100% safe - ignore theme check nag
    Found base64_decode in file init.php.
    Line 127: $details   = (array)json_decode(base64_decode(str_rot13($details)));
    Found base64_decode in file laborator_functions.php.
    Line 735: return base64_decode( str_rot13( $str ) );
  4. Security breaches : Use of base64_encode() Found base64_encode in file lab_contact_form.php.
     <input type='hidden' name='request' value='<?php echo str_rot13(base64_encode(json_encode($atts))); ?>' />
    Found base64_encode in file laborator_custom_css.php.
     echo base64_encode(json_encode($options));
    Found base64_encode in file class.options_machine.php.
     $output .= '<textarea id='export_data' rows='8'>'.base64_encode(serialize($smof_data)) /* 100% safe - ignore theme check nag 
    Found base64_encode in file Less.php.
     $buf = $useBase64 ? base64_encode($buf) : rawurlencode($buf);
     $returner = ''data:image/svg+xml;base64,'.base64_encode($returner).''';
    Found base64_encode in file laborator_functions.php.
     return str_rot13( base64_encode( $str ) );
  5. Security breaches : Use of str_rot13() Found str_rot13 in file lab_contact_form.php.
    Line 42: <input type='hidden' name='request' value='<?php echo str_rot13(base64_encode(json_encode($atts))); ?>' />
    Found str_rot13 in file init.php.
    Line 127: $details   = (array)json_decode(base64_decode(str_rot13($details)));
    Found str_rot13 in file laborator_functions.php.
    Line 730: return str_rot13( base64_encode( $str ) );
    Line 735: return base64_decode( str_rot13( $str ) );
  6. Presence of iframes : iframes are sometimes used to load unwanted adverts and malicious code on another site Found <iframe width="100%" height="100%" src="https://www.youtube.com/embed/'.$video_url_args['v'].'?rel=0&amp;controls=1&amp;showinfo=0" frameborder="0" allowfullscreen> in file portfolio-gallery-with-description.php.
    Line 273: echo '<iframe width='100%' height='100%' src='https://www.youtube.com/embed/'.$vi
    Found <iframe width="100%" height="100%" src="https://www.youtube.com/embed/' . $video_url_args['v'] . '?rel=0&amp;controls=1&amp;showinfo=0" frameborder="0" allowfullscreen> in file portfolio-gallery.php.
    Line 225: echo '<iframe width='100%' height='100%' src='https://www.youtube.com/embed/' . $
  7. Malware : Operations on file system fwrite was found in the file scss.inc.php
    Line 830: fwrite(STDERR, 'Line $line DEBUG: $value\n');
    file_get_contents was found in the file scss.inc.php
    Line 1652: $code = file_get_contents($path);
    Line 4430: $imports = unserialize(file_get_contents($icache));
    Line 4468: $css = $this->scss->compile(file_get_contents($in), $in);
    Line 4529: echo file_get_contents($output);
    file_get_contents was found in the file scss.inc.php
    Line 1652: $code = file_get_contents($path);
    Line 4430: $imports = unserialize(file_get_contents($icache));
    Line 4468: $css = $this->scss->compile(file_get_contents($in), $in);
    Line 4529: echo file_get_contents($output);
    file_get_contents was found in the file scss.inc.php
    Line 1652: $code = file_get_contents($path);
    Line 4430: $imports = unserialize(file_get_contents($icache));
    Line 4468: $css = $this->scss->compile(file_get_contents($in), $in);
    Line 4529: echo file_get_contents($output);
    file_put_contents was found in the file scss.inc.php
    Line 4475: file_put_contents($out, $css);
    Line 4476: file_put_contents($this->importsCacheName($out),
    file_put_contents was found in the file scss.inc.php
    Line 4475: file_put_contents($out, $css);
    Line 4476: file_put_contents($this->importsCacheName($out),
    file_get_contents was found in the file scss.inc.php
    Line 1652: $code = file_get_contents($path);
    Line 4430: $imports = unserialize(file_get_contents($icache));
    Line 4468: $css = $this->scss->compile(file_get_contents($in), $in);
    Line 4529: echo file_get_contents($output);
    file_get_contents was found in the file lessc.inc.php
    Line 121: $root = $parser->parse(file_get_contents($realPath));
    Line 1830: $out = $this->compile(file_get_contents($fname), $fname);
    fwrite was found in the file lessc.inc.php
    Line 687: // fwrite(STDERR,'failed to find block: '.implode(' > ', $path).'\n');
    file_get_contents was found in the file lessc.inc.php
    Line 121: $root = $parser->parse(file_get_contents($realPath));
    Line 1830: $out = $this->compile(file_get_contents($fname), $fname);
    file_put_contents was found in the file lessc.inc.php
    Line 1835: return file_put_contents($outFname, $out);
    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 import.php
    Line 84: $data = file_get_contents( $file );
    file_get_contents was found in the file laborator_demo_content_importer.php
    Line 514: if($theme_options = file_get_contents($theme_options))
    Line 551: if($custom_css = file_get_contents($custom_css))
    file_get_contents was found in the file laborator_demo_content_importer.php
    Line 514: if($theme_options = file_get_contents($theme_options))
    Line 551: if($custom_css = file_get_contents($custom_css))
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_put_contents was found in the file Less.php
    Line 555: file_put_contents( $cache_file, serialize($rules) );
    Line 558: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 562: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    Line 10289: if(file_put_contents($file, $content) === false){
    file_put_contents was found in the file Less.php
    Line 555: file_put_contents( $cache_file, serialize($rules) );
    Line 558: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 562: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    Line 10289: if(file_put_contents($file, $content) === false){
    file_put_contents was found in the file Less.php
    Line 555: file_put_contents( $cache_file, serialize($rules) );
    Line 558: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 562: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    Line 10289: if(file_put_contents($file, $content) === false){
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_put_contents was found in the file Less.php
    Line 555: file_put_contents( $cache_file, serialize($rules) );
    Line 558: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 562: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    Line 10289: if(file_put_contents($file, $content) === false){
    file_get_contents was found in the file Less.php
    Line 514: $cache = unserialize(file_get_contents($cache_file));
    Line 581: $this->input = file_get_contents( $file_path );
    Line 3853: $buf = @file_get_contents($filePath);
    Line 5980: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 8591: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    Line 9549: $this->input = file_get_contents( $this->currentFile['filename'] );
    Line 10412: $content[] = file_get_contents($sourceFile);
    file_put_contents was found in the file Cache.php
    Line 75: file_put_contents($vars_file, $lessvars);
    Line 120: file_put_contents( $list_file, $cache );
    Line 124: file_put_contents( $output_file, $compiled );
    file_put_contents was found in the file Cache.php
    Line 75: file_put_contents($vars_file, $lessvars);
    Line 120: file_put_contents( $list_file, $cache );
    Line 124: file_put_contents( $output_file, $compiled );
    file_put_contents was found in the file Cache.php
    Line 75: file_put_contents($vars_file, $lessvars);
    Line 120: file_put_contents( $list_file, $cache );
    Line 124: file_put_contents( $output_file, $compiled );
    file_get_contents was found in the file Cache.php
    Line 304: $list = explode('\n',file_get_contents($list_file));
    file_get_contents was found in the file laborator_functions.php
    Line 939: echo file_get_contents($svg_path);
    Line 1024: $skin_generator = file_get_contents(THEMEDIR . 'assets/less/skin-generator.less');
    Line 1039: $css_contents = file_get_contents($file);
    file_get_contents was found in the file laborator_functions.php
    Line 939: echo file_get_contents($svg_path);
    Line 1024: $skin_generator = file_get_contents(THEMEDIR . 'assets/less/skin-generator.less');
    Line 1039: $css_contents = file_get_contents($file);
    file_get_contents was found in the file laborator_functions.php
    Line 939: echo file_get_contents($svg_path);
    Line 1024: $skin_generator = file_get_contents(THEMEDIR . 'assets/less/skin-generator.less');
    Line 1039: $css_contents = file_get_contents($file);
  8. Admin menu : Themes should use add_theme_page() for adding admin pages. File laborator_actions.php :
    Line 214: add_menu_page( 'Laborator', 'Laborator', 'edit_theme_options', 'laborator_o
    File laborator_actions.php :
    Line 282: add_submenu_page( 'laborator_options', 'Documentation', 'Theme Help', 'edit
    Line 283: add_submenu_page( 'themes.php', 'Documentation', 'Theme Help', 'edit_theme_
    File laborator_actions.php :
    Line 282: add_submenu_page( 'laborator_options', 'Documentation', 'Theme Help', 'edit
    Line 283: add_submenu_page( 'themes.php', 'Documentation', 'Theme Help', 'edit_theme_
    File laborator_custom_css.php :
    Line 19: add_menu_page('Custom CSS', 'Custom CSS', 'edit_theme_options', 'laborator_
    File page.php :
    Line 26: $page_hook = add_management_page(
    File laborator_demo_content_importer.php :
    Line 155: add_submenu_page('laborator_options', '1-Click Demo Content Installer', 'De
    File class-tgm-plugin-activation.php :
    Line 646: $this->page_hook = call_user_func( 'add_{$type}_page', $args['parent_slug'], $args['page_title'], $args['menu_t
  9. Deprecated functions : screen_icon screen_icon found in file wordpress-importer.php. Deprecated since version 3.8.
    Line 1021: screen_icon();
    screen_icon found in file page.php. Deprecated since version 3.8.
    Line 61: <?php screen_icon(); ?>
  10. Deprecated functions : wp_get_http wp_get_http found in file wordpress-importer.php. Deprecated since version 4.4. Use WP_Http instead.
    Line 894: $headers = wp_get_http( $url, $upload['file'] );
  11. Deprecated functions : get_currentuserinfo get_currentuserinfo found in file form-edit-address.php. Deprecated since version 4.5. Use wp_get_current_user instead.
    Line 20: get_currentuserinfo();
  12. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was revolutionslider.zip layerslider.zip layersliderwp.zip acf-gallery.zip acf-repeater.zip revslider.zip acf-flexible-content.zip js_composer.zip.
Warning
  1. theme tags : Presence of bad theme tagsFound wrong tag agency in style.css header.Found wrong tag architecture in style.css header.Found wrong tag clean in style.css header.Found wrong tag creative in style.css header.Found wrong tag ecommerce in style.css header.Found wrong tag gallery in style.css header.Found wrong tag minimal in style.css header.Found wrong tag shop in style.css header.Found wrong tag kalium in style.css header.The tag responsive-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 _e, with the arguments in file post-single-author.php.Found a translation function that has an incorrect number of arguments. Function _n, with the arguments '%s download remaining', '%s downloads remaining', downloads_remaining, 'woocommerce' in file my-downloads.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file review.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file shipping-calculator.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Loading blog posts...' in file lab_blog_posts.php.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Save All Changes' in file options.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Save All Changes' in file options.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Options Reset' in file options.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Last Backup : ' in file class.options_machine.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Posts' in file functions.options.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Pages' in file functions.options.php.Found a translation function that is missing a text-domain. Function __, with the arguments "Filter Products by Type" in file init.php.Found a translation function that is missing a text-domain. Function __, with the arguments "Based on layout columns you use, select number of columns to wrap the product." in file init.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 kalium, woocommerce, downloads_remaining, tgmpa, wordpress-importer, widget-importer-exporter, default, lab_composer.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the add_shortcode() function. Custom post-content shortcodes are plugin-territory functionality.
  4. Line endings consistency : Both DOS and UNIX style line endingsFound a mix of \r\n and \n line endings in file Less.php.
  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. Deprecated functions : screen_iconscreen_icon found in file wordpress-importer.php. Deprecated since version 3.8.
    Line 1021: screen_icon();
    screen_icon found in file page.php. Deprecated since version 3.8.
    Line 61: <?php screen_icon(); ?>
  8. 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.
  9. I18N implementation : Proper use of _e(Possible variable $role_title found in translation function in post-single-author.php. Translation function calls should not contain PHP variables.
    Line 45: <em><?php _e($role_title, TD); ?></em>
    Possible variable $str found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 102: $url = $this->compileValue($this->lib_e($str));
    Possible variable $arg found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 955: protected function lib_e($arg) {
    Possible variable $items found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 960: return $this->lib_e($items[0]);
    Possible variable $string found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 977: $template = $this->compileValue($this->lib_e($string));
    Possible variable $val found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 991: $rep = $this->compileValue($this->lib_e($val));
    Possible variable $newUnit found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 1020: $this->compileValue($this->lib_e($newUnit)));
    Possible variable $res found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 1367: if (empty($value[2])) $res = $this->lib_e($res);
    Possible variable $key found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 1374: $key = $this->vPrefix . $this->compileValue($this->lib_e($key));
    Possible variable $part found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 1399: if ($strip) $part = $this->lib_e($part);
    Possible variable $this found in translation function in lessc.inc.php. Translation function calls should not contain PHP variables.
    Line 1405: return $this->lib_e($this->reduce($inner));
  10. I18N implementation : Proper use of ___all(Possible variable $cvalue found in translation function in shipping-calculator.php. Translation function calls should not contain PHP variables.
    Line 66: echo '<option value='' . esc_attr( $ckey ) . '' ' . selected( $current_r, $ckey, false ) . '>' . __( esc_html( $cvalue ), 'woocommerce' ) .'</option>';
  11. CSS files : Presence of .bypostauthor class.bypostauthor css class is needed in theme css.
  12. CSS files : Presence of .gallery-caption class.gallery-caption css class is needed in theme css.
  13. Date and time implementation : Use of the_time()At least one hard coded date was found in the file post-category-date.php. Function get_option( 'date_format' ) should be used instead.
  14. Screenshot : Screenshot fileScreenshot dimensions are wrong! Detected: 285x370px (57:74). Ratio of width to height should be 4:3.Screenshot size is 285x370px. 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. favicon presence : Favicon managementPossible Favicon found in laborator_actions.php. Favicons are handled by the Site Icon setting in the customizer since version 4.3.
  2. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file laborator_actions.php.
    Line 396: example: <a href='http://drops.laborator.co/1cTZb' target='_blank'>http://drops.laborator.co/
    Line 399: View this screenshot to see when the new update is available: <a href='http://drops.laborator.co/141DA' target='_blank'>http://drops.laborator.co/
    Line 411: Click this link <a href='http://drops.laborator.co/12DUv' target='_blank'>http://drops.laborator.co/
    Line 414: This screenshot <a href='http://drops.laborator.co/17J6H' target='_blank'>http://drops.laborator.co/
    Possible hard-coded links were found in the file laborator_custom_css.php.
    Line 233: <h3>Apply your own style in <a href='http://www.lesscss.org/' target='_blank'>LESS</a> language</h3>
    Line 262: <h3>Apply your own style in <a href='http://sass-lang.com/' target='_blank'>SASS</a> language</h3>
    Line 321: <p class='laborator-copyrights clear'>&copy; <strong>Custom CSS</strong> plugin created by <a href='http://laborator.co/' target='_blank'>Laborator.co</a></p>
    Possible hard-coded links were found in the file demo-content-page.php.
    Line 56: To change PHP directives you need to modify <strong>php.ini</strong> file, more information about this you can <a href='http://goo.gl/I9f74U' target='_blank'>search here</a> or contact your hosti
    Line 96: &copy; This plugin is developed by <a href='http://laborator.co'>Laborator</a>
    Possible hard-coded links were found in the file options.php.
    Line 34: <a href='http://laborator.co' target='_blank' class='icon-option'></a>
    Possible hard-coded links were found in the file init.php.
    Line 134: 'description' => __( 'Paste the style code here. Browse map styles in <a href='https://snazzymaps.com/' target='_blank'>SnazzyMaps</a>', 'lab_composer' )
    Line 185: 'description'    => __( 'Enter latitude coordinate. To select map coordinates <a href='http://www.latlong.net/convert-address-to-lat-long.html' target='_blank'>cl
    Possible hard-coded links were found in the file custom-columns.php.
    Line 72: 'description' => __( 'Set reveal effect for this element. To preview the animations <a href='http://daneden.github.io/animate.css/' target='_blank'>click here</a>.', 'l
  3. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  4. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  5. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.php.
  6. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  7. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  8. Optional files : Presence of author template file author.phpThis theme does not contain optional file author.php.
  9. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.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 : archive.php
    Line 11: include_once(THEMEDIR . 'tpls/blog-query.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 : laborator_actions.php
    Line 903: include_once( THEMEDIR . 'tpls/blog-query.php' );
    Line 1006: include_once( THEMEDIR . 'tpls/portfolio-query.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 : laborator_custom_css.php
    Line 513: require_once('custom-css-lib/lessc.inc.php');
    Line 537: require_once('custom-css-lib/scss.inc.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 : scss.inc.php
    Line 2816: 
    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 : laborator_demo_content_importer.php
    Line 172: include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
    Line 174: include 'demo-content-page.php';
    Line 212: require 'demo-content-install-pack.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 : smof.php
    Line 85: require_once ( ADMIN_PATH . 'functions/functions.load.php' );
    Line 86: require_once ( ADMIN_PATH . 'classes/class.options_machine.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 : functions.load.php
    Line 10: require( ADMIN_PATH . 'functions/functions.php' );
    Line 11: require( ADMIN_PATH . 'functions/functions.filters.php' );
    Line 12: require( ADMIN_PATH . 'functions/functions.interface.php' );
    Line 13: require( ADMIN_PATH . 'functions/functions.options.php' );
    Line 14: require( ADMIN_PATH . 'functions/functions.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 : functions.interface.php
    Line 84: include_once( ADMIN_PATH . 'front-end/options.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 : Less.php
    Line 3: require_once( dirname(__FILE__).'/Cache.php');
    Line 527: return include($cache_file);
    Line 3832: $mime = require('mime');
    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 : Cache.php
    Line 3: require_once( dirname(__FILE__).'/Version.php');
    Line 152: require_once($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 ).

0
Critical alerts
  1. Title : Title The <title> tags can only contain a call to wp_title(). Use the wp_title filter to modify the output.
  2. Security breaches : Modification of PHP server settings Found ini_set in file Less.php.
    Line 173: @ini_set('precision',16);
    Line 211: @ini_set('precision',$precision);
    Line 471: @ini_set('mbstring.internal_encoding', 'ascii');
    Line 478: @ini_set('mbstring.internal_encoding', $mb_internal_encoding);
    Found ini_set in file laborator_functions.php.
    Line 1018: @ini_set( 'memory_limit', '256M' );
  3. Security breaches : Use of str_rot13() Found str_rot13 in file lab_contact_form.php.
    Line 42: <input type='hidden' name='request' value='<?php echo str_rot13(base64_encode(json_encode($atts))); ?>' />
    Found str_rot13 in file init.php.
    Line 127: $details   = (array)json_decode(base64_decode(str_rot13($details)));
    Found str_rot13 in file laborator_functions.php.
    Line 730: return str_rot13( base64_encode( $str ) );
    Line 735: return base64_decode( str_rot13( $str ) );
  4. Deprecated functions : screen_icon screen_icon found in file wordpress-importer.php. Deprecated since version 3.8.
    Line 1021: screen_icon();
    screen_icon found in file page.php. Deprecated since version 3.8.
    Line 61: <?php screen_icon(); ?>
  5. Deprecated functions : wp_get_http wp_get_http found in file wordpress-importer.php. Deprecated since version 4.4. Use WP_Http instead.
    Line 894: $headers = wp_get_http( $url, $upload['file'] );
  6. Deprecated functions : get_currentuserinfo get_currentuserinfo found in file form-edit-address.php. Deprecated since version 4.5. Use wp_get_current_user instead.
    Line 20: get_currentuserinfo();
  7. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was revolutionslider.zip layerslider.zip layersliderwp.zip acf-gallery.zip acf-repeater.zip revslider.zip acf-flexible-content.zip js_composer.zip.
Warning
  1. theme tags : Presence of bad theme tagsFound wrong tag agency in style.css header.Found wrong tag architecture in style.css header.Found wrong tag clean in style.css header.Found wrong tag creative in style.css header.Found wrong tag ecommerce in style.css header.Found wrong tag gallery in style.css header.Found wrong tag minimal in style.css header.Found wrong tag shop in style.css header.Found wrong tag kalium in style.css header.The tag responsive-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 _e, with the arguments in file post-single-author.php.Found a translation function that has an incorrect number of arguments. Function _n, with the arguments '%s download remaining', '%s downloads remaining', downloads_remaining, 'woocommerce' in file my-downloads.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file review.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file shipping-calculator.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Loading blog posts...' in file lab_blog_posts.php.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.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 laborator_actions.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Save All Changes' in file options.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Save All Changes' in file options.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'Options Reset' in file options.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Last Backup : ' in file class.options_machine.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Posts' in file functions.options.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Pages' in file functions.options.php.Found a translation function that is missing a text-domain. Function __, with the arguments "Filter Products by Type" in file init.php.Found a translation function that is missing a text-domain. Function __, with the arguments "Based on layout columns you use, select number of columns to wrap the product." in file init.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 kalium, woocommerce, downloads_remaining, tgmpa, wordpress-importer, widget-importer-exporter, default, lab_composer.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the add_shortcode() function. Custom post-content shortcodes are plugin-territory functionality.
  4. Line endings consistency : Both DOS and UNIX style line endingsFound a mix of \r\n and \n line endings in file Less.php.
  5. Deprecated functions : screen_iconscreen_icon found in file wordpress-importer.php. Deprecated since version 3.8.
    Line 1021: screen_icon();
    screen_icon found in file page.php. Deprecated since version 3.8.
    Line 61: <?php screen_icon(); ?>
  6. CSS files : Presence of .bypostauthor class.bypostauthor css class is needed in theme css.
  7. CSS files : Presence of .gallery-caption class.gallery-caption css class is needed in theme css.
  8. Date and time implementation : Use of the_time()At least one hard coded date was found in the file post-category-date.php. Function get_option( 'date_format' ) should be used instead.
  9. Screenshot : Screenshot fileScreenshot dimensions are wrong! Detected: 285x370px (57:74). Ratio of width to height should be 4:3.Screenshot size is 285x370px. 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. favicon presence : Favicon managementPossible Favicon found in laborator_actions.php. Favicons are handled by the Site Icon setting in the customizer since version 4.3.
  2. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file laborator_actions.php.
    Line 396: example: <a href='http://drops.laborator.co/1cTZb' target='_blank'>http://drops.laborator.co/
    Line 399: View this screenshot to see when the new update is available: <a href='http://drops.laborator.co/141DA' target='_blank'>http://drops.laborator.co/
    Line 411: Click this link <a href='http://drops.laborator.co/12DUv' target='_blank'>http://drops.laborator.co/
    Line 414: This screenshot <a href='http://drops.laborator.co/17J6H' target='_blank'>http://drops.laborator.co/
    Possible hard-coded links were found in the file laborator_custom_css.php.
    Line 233: <h3>Apply your own style in <a href='http://www.lesscss.org/' target='_blank'>LESS</a> language</h3>
    Line 262: <h3>Apply your own style in <a href='http://sass-lang.com/' target='_blank'>SASS</a> language</h3>
    Line 321: <p class='laborator-copyrights clear'>&copy; <strong>Custom CSS</strong> plugin created by <a href='http://laborator.co/' target='_blank'>Laborator.co</a></p>
    Possible hard-coded links were found in the file demo-content-page.php.
    Line 56: To change PHP directives you need to modify <strong>php.ini</strong> file, more information about this you can <a href='http://goo.gl/I9f74U' target='_blank'>search here</a> or contact your hosti
    Line 96: &copy; This plugin is developed by <a href='http://laborator.co'>Laborator</a>
    Possible hard-coded links were found in the file options.php.
    Line 34: <a href='http://laborator.co' target='_blank' class='icon-option'></a>
    Possible hard-coded links were found in the file init.php.
    Line 134: 'description' => __( 'Paste the style code here. Browse map styles in <a href='https://snazzymaps.com/' target='_blank'>SnazzyMaps</a>', 'lab_composer' )
    Line 185: 'description'    => __( 'Enter latitude coordinate. To select map coordinates <a href='http://www.latlong.net/convert-address-to-lat-long.html' target='_blank'>cl
    Possible hard-coded links were found in the file custom-columns.php.
    Line 72: 'description' => __( 'Set reveal effect for this element. To preview the animations <a href='http://daneden.github.io/animate.css/' target='_blank'>click here</a>.', 'l
  3. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  4. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  5. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.php.
  6. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  7. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  8. Optional files : Presence of author template file author.phpThis theme does not contain optional file author.php.
  9. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.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 : archive.php
    Line 11: include_once(THEMEDIR . 'tpls/blog-query.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 : laborator_actions.php
    Line 903: include_once( THEMEDIR . 'tpls/blog-query.php' );
    Line 1006: include_once( THEMEDIR . 'tpls/portfolio-query.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 : laborator_custom_css.php
    Line 513: require_once('custom-css-lib/lessc.inc.php');
    Line 537: require_once('custom-css-lib/scss.inc.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 : scss.inc.php
    Line 2816: 
    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 : laborator_demo_content_importer.php
    Line 172: include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
    Line 174: include 'demo-content-page.php';
    Line 212: require 'demo-content-install-pack.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 : smof.php
    Line 85: require_once ( ADMIN_PATH . 'functions/functions.load.php' );
    Line 86: require_once ( ADMIN_PATH . 'classes/class.options_machine.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 : functions.load.php
    Line 10: require( ADMIN_PATH . 'functions/functions.php' );
    Line 11: require( ADMIN_PATH . 'functions/functions.filters.php' );
    Line 12: require( ADMIN_PATH . 'functions/functions.interface.php' );
    Line 13: require( ADMIN_PATH . 'functions/functions.options.php' );
    Line 14: require( ADMIN_PATH . 'functions/functions.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 : functions.interface.php
    Line 84: include_once( ADMIN_PATH . 'front-end/options.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 : Less.php
    Line 3: require_once( dirname(__FILE__).'/Cache.php');
    Line 527: return include($cache_file);
    Line 3832: $mime = require('mime');
    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 : Cache.php
    Line 3: require_once( dirname(__FILE__).'/Version.php');
    Line 152: require_once($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