0
Validation results

Porto

Porto

WordPress 4.8 theme
0
  • THEME TYPEWordPress theme 4.8
  • FILE NAMEwp.zip
  • FILE SIZE27647322 bytes
  • MD5b554f05097c1e8df377dc801f211edf7
  • SHA1f7bf07bc738d7a737f495d356319d634f263d3fa
  • LICENSECustom
  • FILES INCLUDEDCSS, PHP, XML, Bitmap images, Adobe Photoshop, Adobe Illustrator
  • THEMEFOREST PAGEhttp://themeforest.net/item/porto-responsive-wordpress-ecommerce-theme/9207399 ($59)
  • THEME URIhttp://www.newsmartwave.net/wordpress/porto
  • VERSION3.5.1
  • AUTHOR URI
  • TAGSwoocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
  • CREATION DATE2017-05-16
  • LAST FILE UPDATE2017-05-16
  • LAST VALIDATION2017-05-16 15:17
  • OTHER VERSIONS

    1.0 : 71%

Critical alerts
  1. Security breaches : Modification of PHP server settings Found ini_set in file save_settings.php.
    Line 13: @ini_set('max_execution_time', '10000');
    
    
    Line 14: @ini_set('memory_limit', '256M');
    
    
    Line 144: @ini_set('max_execution_time', '10000');
    
    
    Line 145: @ini_set('memory_limit', '256M');
    
    
    Line 275: @ini_set('max_execution_time', '10000');
    
    
    Line 276: @ini_set('memory_limit', '256M');
    
    
    Line 368: @ini_set('max_execution_time', '10000');
    
    
    Line 369: @ini_set('memory_limit', '256M');
    
    
    Line 475: @ini_set('max_execution_time', '10000');
    
    
    Line 476: @ini_set('memory_limit', '256M');
    
    
    Found ini_set in file Parser.php.
    Line 94: @ini_set('mbstring.internal_encoding', 'ascii');
    
    Line 184: @ini_set('precision',16);
    
    Line 222: @ini_set('precision',$precision);
    
    Line 228: @ini_set('mbstring.internal_encoding', $this->mb_internal_encoding);
    
    Found ini_set in file importer.php.
    Line 339: @ini_set('max_execution_time', '10000');
    Line 341: @ini_set('memory_limit', '256M');
  2. Security breaches : Use of base64_encode() Found base64_encode in file Functions.php.
     $buf = $useBase64 ? base64_encode($buf) : rawurlencode($buf);
     $returner = ''data:image/svg+xml;base64,'.base64_encode($returner).''';
  3. Unwanted files : hidden file(s) or folder(s) .easymin was found.
  4. Malware : Operations on file system file_get_contents was found in the file Server.php
    Line 119: $metadata = unserialize(file_get_contents($metadataName));
    
    Line 186: $css     = $this->scss->compile(file_get_contents($in), $in);
    
    Line 265: echo file_get_contents($output);
    
    file_get_contents was found in the file Server.php
    Line 119: $metadata = unserialize(file_get_contents($metadataName));
    
    Line 186: $css     = $this->scss->compile(file_get_contents($in), $in);
    
    Line 265: echo file_get_contents($output);
    
    file_put_contents was found in the file Server.php
    Line 194: file_put_contents($out, $css);
    
    Line 195: file_put_contents(
    
    file_put_contents was found in the file Server.php
    Line 194: file_put_contents($out, $css);
    
    Line 195: file_put_contents(
    
    file_get_contents was found in the file Server.php
    Line 119: $metadata = unserialize(file_get_contents($metadataName));
    
    Line 186: $css     = $this->scss->compile(file_get_contents($in), $in);
    
    Line 265: echo file_get_contents($output);
    
    fwrite was found in the file Compiler.php
    Line 967: fwrite(STDERR, 'Line $line DEBUG: $value\n');
    
    file_get_contents was found in the file Compiler.php
    Line 1961: $code = file_get_contents($path);
    
    file_get_contents was found in the file Import.php
    Line 176: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    
    file_put_contents was found in the file Generator.php
    Line 152: if(file_put_contents($file, $content) === false){
    
    
    file_get_contents was found in the file Generator.php
    Line 275: $content[] = file_get_contents($sourceFile);
    
    
    file_get_contents was found in the file import.php
    Line 69: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );
    
    file_get_contents was found in the file Functions.php
    Line 923: $buf = @file_get_contents($filePath);
    
    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 Parser.php
    Line 524: $cache = unserialize(file_get_contents($cache_file));
    
    Line 591: $this->input = file_get_contents( $file_path );
    
    file_put_contents was found in the file Parser.php
    Line 565: file_put_contents( $cache_file, serialize($rules) );
    
    Line 568: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 572: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    file_put_contents was found in the file Parser.php
    Line 565: file_put_contents( $cache_file, serialize($rules) );
    
    Line 568: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 572: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    file_put_contents was found in the file Parser.php
    Line 565: file_put_contents( $cache_file, serialize($rules) );
    
    Line 568: file_put_contents( $cache_file, '<?php return '.self::ArgString($rules).'; 
    Line 572: file_put_contents( $cache_file, '<?php return '.var_export($rules,true).'; 
    file_get_contents was found in the file Parser.php
    Line 524: $cache = unserialize(file_get_contents($cache_file));
    
    Line 591: $this->input = file_get_contents( $file_path );
    
    file_get_contents was found in the file Parser.php
    Line 58: $this->input = file_get_contents( $this->currentFile['filename'] );
    
    
    file_put_contents was found in the file lessc.inc.php
    Line 174: return file_put_contents($outFname, $out);
    
    file_get_contents was found in the file extension_custom_fonts.php
    Line 580: //$payload .= file_get_contents( $output[ $main ] );
    
    file_get_contents was found in the file class.redux_sass.php
    Line 52: $ids = file_get_contents(self::$matrix_file);
    
    file_put_contents was found in the file class.redux_sass.php
    Line 59: $ret = @file_put_contents(self::$matrix_file, $ids);
    
    Line 166: $ret = @file_put_contents($css_file, $new_css);
    
    Line 206: $ret = @file_put_contents($scss_path . '/' .  $filename . '.css', $new_css);
    
    file_put_contents was found in the file class.redux_sass.php
    Line 59: $ret = @file_put_contents(self::$matrix_file, $ids);
    
    Line 166: $ret = @file_put_contents($css_file, $new_css);
    
    Line 206: $ret = @file_put_contents($scss_path . '/' .  $filename . '.css', $new_css);
    
    file_put_contents was found in the file class.redux_sass.php
    Line 59: $ret = @file_put_contents(self::$matrix_file, $ids);
    
    Line 166: $ret = @file_put_contents($css_file, $new_css);
    
    Line 206: $ret = @file_put_contents($scss_path . '/' .  $filename . '.css', $new_css);
    
    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_put_contents was found in the file class.redux_filesystem.php
    Line 160: $res = file_put_contents( $file, $content, $chmod );
    
    file_get_contents was found in the file class.redux_filesystem.php
    Line 186: $res = file_get_contents( $file );
    
    fopen was found in the file class.redux_api.php
    Line 369: $fp = fopen( $file, 'r' );
    
    fread was found in the file class.redux_api.php
    Line 372: $file_data = fread( $fp, $size );
    
    fclose was found in the file class.redux_api.php
    Line 375: fclose( $fp );
    
    fopen was found in the file class.redux_helpers.php
    Line 376: $sysinfo['redux_data_writeable'] = self::makeBoolStr( @fopen( ReduxFramework::$_upload_dir . 'test-log.log', 'a' ) );
    
    Line 634: $fp = fopen( $file, 'r' );
    
    fopen was found in the file class.redux_helpers.php
    Line 376: $sysinfo['redux_data_writeable'] = self::makeBoolStr( @fopen( ReduxFramework::$_upload_dir . 'test-log.log', 'a' ) );
    
    Line 634: $fp = fopen( $file, 'r' );
    
    fread was found in the file class.redux_helpers.php
    Line 637: $file_data = fread( $fp, 8192 );
    
    fclose was found in the file class.redux_helpers.php
    Line 640: fclose( $fp );
    
    fopen was found in the file panel.php
    Line 252: $fp = fopen( $file, 'r' );
    
    fread was found in the file panel.php
    Line 255: $file_data = fread( $fp, 8192 );
    
    fclose was found in the file panel.php
    Line 258: fclose( $fp );
    
    file_get_contents was found in the file parsers.php
    Line 69: $success = $dom->loadXML( file_get_contents( $file ) );
    Line 290: if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
    file_get_contents was found in the file parsers.php
    Line 69: $success = $dom->loadXML( file_get_contents( $file ) );
    Line 290: if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
    fopen was found in the file parsers.php
    Line 438: $fp = $this->fopen( $file, 'r' );
    Line 665: function fopen( $filename, $mode = 'r' ) {
    Line 668: return fopen( $filename, $mode );
    fclose was found in the file parsers.php
    Line 488: $this->fclose($fp);
    Line 683: function fclose( $fp ) {
    Line 686: return fclose( $fp );
    fopen was found in the file parsers.php
    Line 438: $fp = $this->fopen( $file, 'r' );
    Line 665: function fopen( $filename, $mode = 'r' ) {
    Line 668: return fopen( $filename, $mode );
    fopen was found in the file parsers.php
    Line 438: $fp = $this->fopen( $file, 'r' );
    Line 665: function fopen( $filename, $mode = 'r' ) {
    Line 668: return fopen( $filename, $mode );
    fclose was found in the file parsers.php
    Line 488: $this->fclose($fp);
    Line 683: function fclose( $fp ) {
    Line 686: return fclose( $fp );
    fclose was found in the file parsers.php
    Line 488: $this->fclose($fp);
    Line 683: function fclose( $fp ) {
    Line 686: return fclose( $fp );
  5. Admin menu : Themes should use add_theme_page() for adding admin pages. File admin.php :
    Line 96: $welcome_screen = add_menu_page( 'Porto', 'Porto', 'administrator', 'porto', array( $this, 'w
    File admin.php :
    Line 98: $welcome       = add_submenu_page( 'porto', __( 'Welcome', 'Porto' ), __( 'Welcome', 'Porto'
    Line 99: $system_status = add_submenu_page( 'porto', __( 'System Status', 'Porto' ), __( 'System Stat
    Line 100: $plugins       = add_submenu_page( 'porto', __( 'Plugins', 'Porto' ), __( 'Plugins', 'Porto'
    Line 101: $demos         = add_submenu_page( 'porto', __( 'Install Demos', 'Porto' ), __( 'Install Dem
    Line 102: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'Porto' ), __( 'Theme Optio
    File admin.php :
    Line 98: $welcome       = add_submenu_page( 'porto', __( 'Welcome', 'Porto' ), __( 'Welcome', 'Porto'
    Line 99: $system_status = add_submenu_page( 'porto', __( 'System Status', 'Porto' ), __( 'System Stat
    Line 100: $plugins       = add_submenu_page( 'porto', __( 'Plugins', 'Porto' ), __( 'Plugins', 'Porto'
    Line 101: $demos         = add_submenu_page( 'porto', __( 'Install Demos', 'Porto' ), __( 'Install Dem
    Line 102: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'Porto' ), __( 'Theme Optio
    File admin.php :
    Line 98: $welcome       = add_submenu_page( 'porto', __( 'Welcome', 'Porto' ), __( 'Welcome', 'Porto'
    Line 99: $system_status = add_submenu_page( 'porto', __( 'System Status', 'Porto' ), __( 'System Stat
    Line 100: $plugins       = add_submenu_page( 'porto', __( 'Plugins', 'Porto' ), __( 'Plugins', 'Porto'
    Line 101: $demos         = add_submenu_page( 'porto', __( 'Install Demos', 'Porto' ), __( 'Install Dem
    Line 102: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'Porto' ), __( 'Theme Optio
    File admin.php :
    Line 98: $welcome       = add_submenu_page( 'porto', __( 'Welcome', 'Porto' ), __( 'Welcome', 'Porto'
    Line 99: $system_status = add_submenu_page( 'porto', __( 'System Status', 'Porto' ), __( 'System Stat
    Line 100: $plugins       = add_submenu_page( 'porto', __( 'Plugins', 'Porto' ), __( 'Plugins', 'Porto'
    Line 101: $demos         = add_submenu_page( 'porto', __( 'Install Demos', 'Porto' ), __( 'Install Dem
    Line 102: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'Porto' ), __( 'Theme Optio
    File admin.php :
    Line 98: $welcome       = add_submenu_page( 'porto', __( 'Welcome', 'Porto' ), __( 'Welcome', 'Porto'
    Line 99: $system_status = add_submenu_page( 'porto', __( 'System Status', 'Porto' ), __( 'System Stat
    Line 100: $plugins       = add_submenu_page( 'porto', __( 'Plugins', 'Porto' ), __( 'Plugins', 'Porto'
    Line 101: $demos         = add_submenu_page( 'porto', __( 'Install Demos', 'Porto' ), __( 'Install Dem
    Line 102: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'Porto' ), __( 'Theme Optio
    File framework.php :
    Line 1208: // wrappers and need to be appened to using add_submenu_page.
    
    Line 1258: $this->page = add_submenu_page(
    
    Line 1317: add_submenu_page(
    
    Line 1329: add_submenu_page(
    
    File framework.php :
    Line 1208: // wrappers and need to be appened to using add_submenu_page.
    
    Line 1258: $this->page = add_submenu_page(
    
    Line 1317: add_submenu_page(
    
    Line 1329: add_submenu_page(
    
    File framework.php :
    Line 1285: $this->page = add_menu_page(
    
    File framework.php :
    Line 1208: // wrappers and need to be appened to using add_submenu_page.
    
    Line 1258: $this->page = add_submenu_page(
    
    Line 1317: add_submenu_page(
    
    Line 1329: add_submenu_page(
    
    File framework.php :
    Line 1208: // wrappers and need to be appened to using add_submenu_page.
    
    Line 1258: $this->page = add_submenu_page(
    
    Line 1317: add_submenu_page(
    
    Line 1329: add_submenu_page(
    
  6. Hidden admin bar : Hidden admin Bar Themes should not hide admin bar. Detected in file : functions.php.
  7. 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 16: get_currentuserinfo();
    
  8. Deprecated functions : get_option get_option('home') was found in the file layout.php. Use home_url() instead.
    Line 806: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1010: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1172: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1716: if(is_404()) $url = get_option('home'); else $url = '';
    Line 2226: if(is_404()) $url = get_option('home'); else $url = '';
    Line 2744: if(is_404()) $url = get_option('home'); else $url = '';
  9. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was porto-content-types.zip porto-shortcodes.zip ultimate_vc_addons.zip envato-wordpress-toolkit.zip revslider.zip porto-widgets.zip js_composer.zip geodirectory-porto-theme-compatibility-pack.zip.
Warning
  1. core scripts deregistered : Core scripts deregistrationFound wp_deregister_script in functions.php. Themes must not deregister core scripts.
    Line 375: wp_deregister_script( 'porto-plugins' );
    Line 379: wp_deregister_script( 'porto-theme' );
    Found wp_deregister_script in vc_pie.php. Themes must not deregister core scripts.
    Line 48: wp_deregister_script( 'vc_pie' );
    
    
    Found wp_deregister_script in vc_progress_bar.php. Themes must not deregister core scripts.
    Line 42: wp_deregister_script( 'waypoints' );
    
    Found wp_deregister_script in framework.php. Themes must not deregister core scripts.
    Line 518: wp_deregister_script( 'wpb_ace' );
    
  2. theme tags : Presence of bad theme tagsFound wrong tag woocommerce in style.css header.Found wrong tag corporate in style.css header.Found wrong tag ecommerce in style.css header.Found wrong tag responsive in style.css header.The tag blue has been deprecated, it must be removed from style.css header.The tag black has been deprecated, it must be removed from style.css header.The tag green has been deprecated, it must be removed from style.css header.The tag white has been deprecated, it must be removed from style.css header.The tag light has been deprecated, it must be removed from style.css header.The tag dark has been deprecated, it must be removed from style.css header.The tag red has been deprecated, it must be removed from style.css header.The tag fixed-layout has been deprecated, it must be removed from style.css header.The tag responsive-layout has been deprecated, it must be removed from style.css header.Themes that use the tag accessibility-ready will need to undergo an accessibility review.
    See https://make.wordpress.org/themes/handbook/review/accessibility/
  3. Text domain : Incorrect use of translation functions.Wrong installation directory for the theme name. The directory name must match the slug of the theme. This theme's correct slug and text-domain is porto.
  4. Text domain : Incorrect use of translation functions.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 shipping-calculator.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals-v1.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals-v2.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After save the changes, will be regenerate the css files (skin_', .css, skin_rtl_, '.css) in ' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After save the changes, will be regenerate the css files (skin_', .css, skin_rtl_, '.css) in ', 'porto' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_', '.css in ' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_', '.css in ', 'porto' in file settings.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'No Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '1 Comment' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '% Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Comments Off' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Enter your password to view comments.' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Comment on %s' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '% Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'No Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '1 Comment' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Use commas instead of %s to separate excluded categories.' in file woocommerce.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'billing_first_name' in file woocommerce.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'billing_last_name' in file woocommerce.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 porto, woocommerce, yith-woocommerce-wishlist, downloads_remaining, js_composer, Porto, .css, skin_rtl_, .css, theme_rtl_, redux-framework, tgmpa, wordpress-importer, wysija-newsletters, porto-shortcodes, blank, textdomain.
  5. PHP short tags : Presence of PHP short tagsPHP short tags were found in file parsedown.php. "This practice is discouraged because they are only available if enabled with short_open_tag php.ini configuration file directive, or if PHP was configured with the --enable-short-tags option" (php.net), which is not the case on many servers.
    Line 838: if (preg_match('/^\[(.+?)\]:[ ]*<?(\S+?)>?(?:[ ]+['\'(](.+)['\')])?[ ]*$/', $Line['text'], $matches))
    
  6. Hidden admin bar : Hidden admin Bar in CSSThemes should not hide admin bar. Detected in file theme.css.
  7. I18N implementation : Proper use of _e(Possible variable $_POST found in translation function in woocommerce.php. Translation function calls should not contain PHP variables.
    Line 799: <input type='text' class='woocommerce-Input woocommerce-Input--text input-text' name='billing_first_name' id='reg_billing_first_name' value='<?php if ( ! empty( $_POST['billing_first_name'] ) ) esc_attr_e( $_POST['billing_first_name'] ); ?>' />
    Possible variable $_POST found in translation function in woocommerce.php. Translation function calls should not contain PHP variables.
    Line 803: <input type='text' class='woocommerce-Input woocommerce-Input--text input-text' name='billing_last_name' id='reg_billing_last_name' value='<?php if ( ! empty( $_POST['billing_last_name'] ) ) esc_attr_e( $_POST['billing_last_name'] ); ?>' />
  8. 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 62: echo '<option value='' . esc_attr( $ckey ) . '' ' . selected( $current_r, $ckey, false ) . '>' . __( esc_html( $cvalue ), 'woocommerce' ) .'</option>';
    
  9. I18N implementation : Proper use of esc_attr_e(Possible variable $_POST found in translation function in woocommerce.php. Translation function calls should not contain PHP variables.
    Line 799: <input type='text' class='woocommerce-Input woocommerce-Input--text input-text' name='billing_first_name' id='reg_billing_first_name' value='<?php if ( ! empty( $_POST['billing_first_name'] ) ) esc_attr_e( $_POST['billing_first_name'] ); ?>' />
    Possible variable $_POST found in translation function in woocommerce.php. Translation function calls should not contain PHP variables.
    Line 803: <input type='text' class='woocommerce-Input woocommerce-Input--text input-text' name='billing_last_name' id='reg_billing_last_name' value='<?php if ( ! empty( $_POST['billing_last_name'] ) ) esc_attr_e( $_POST['billing_last_name'] ); ?>' />
  10. Screenshot : Screenshot fileScreenshot size is 800x600px. 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 settings.php.
    Line 5836: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto
    Line 5843: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'port
    Line 5836: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto
    Line 5843: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'port
    Possible hard-coded links were found in the file class.redux_themecheck.php.
    Line 61: echo sprintf( 'The theme you are testing has %s embedded. We invite you to read the %sTheme-Check Documentation%s to understand some warnings you will see because of Redux.', '<a href='http://reduxframework.com' target='_blank'>Redux Framework</a>', '<a href='
  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 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 : Parser.php
    Line 189: if ($this->literal('@include') &&
    
    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.php
    Line 107: require_once( porto_admin . '/admin_pages/welcome.php' );
    
    
    Line 111: require_once( porto_admin . '/admin_pages/system-status.php' );
    
    
    Line 115: require_once( porto_admin . '/admin_pages/install-demos.php' );
    
    
    Line 119: require_once( porto_admin . '/admin_pages/porto-plugins.php' );
    
    
    Line 244: require_once(porto_admin . '/theme_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 : theme_options.php
    Line 7: require_once( porto_admin . '/functions.php' );
    
    
    Line 10: require_once( porto_admin . '/ReduxCore/framework.php' );
    
    
    Line 13: require_once( porto_admin . '/theme_options/settings.php' );
    
    
    Line 15: require_once( porto_admin . '/theme_options/save_settings.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 : save_settings.php
    Line 21: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 152: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 283: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 376: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 484: require_once( porto_admin . '/lessphp/lessc.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 : admin_complete.php
    Line 3: require_once(porto_admin . '/theme_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 : Functions.php
    Line 902: $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.
    The theme appears to use include or require : Parser.php
    Line 3: require_once( dirname(__FILE__).'/Cache.php');
    
    Line 537: return include($cache_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 : framework.php
    Line 35: require_once( dirname( __FILE__ ) . '/inc/class.redux_instances.php' );
    
    Line 36: require_once( dirname( __FILE__ ) . '/inc/lib.redux_instances.php' );
    
    Line 47: require_once( dirname( __FILE__ ) . '/inc/class.redux_api.php' );
    
    Line 50: require_once( dirname( __FILE__ ) . '/inc/class.redux_helpers.php' );
    
    Line 53: require_once( dirname( __FILE__ ) . '/inc/class.redux_functions.php' );
    
    Line 54: require_once( dirname( __FILE__ ) . '/inc/class.p.php' );
    
    Line 56: require_once( dirname( __FILE__ ) . '/inc/class.redux_filesystem.php' );
    
    Line 59: require_once( dirname( __FILE__ ) . '/inc/class.redux_themecheck.php' );
    
    Line 1494: require_once( $class_file );
    
    Line 1569: include_once( 'core/enqueue.php' );
    
    Line 1883: include( ABSPATH . 'wp-includes/pluggable.php' );
    
    Line 2320: require_once( $class_file );
    
    Line 2692: include_once( 'core/enqueue.php' );
    
    Line 2696: include_once( 'core/panel.php' );
    
    Line 2846: require_once( $class_file );
    
    Line 3071: include_once( 'core/panel.php' );
    
    Line 3198: 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 : extension_customizer.php
    Line 629: 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 : extension_custom_fonts.php
    Line 134: //require_once 'System.php'; // Wordpress core 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 : class.redux_sass.php
    Line 140: require( 'scssphp/scss.inc.php' );
    
    Line 191: require( 'scssphp/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 : class.redux_functions.php
    Line 91: 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 : 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 : class.redux_filesystem.php
    Line 78: require_once( ABSPATH . '/wp-admin/includes/template.php' );
    
    Line 79: 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.redux_api.php
    Line 65: require_once( $extension['path'] );
    
    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.redux_helpers.php
    Line 99: require_once( ABSPATH . 'wp-admin/includes/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 : sysinfo.php
    Line 54: require_once 'browser.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_raw.php
    Line 32: require_once( $this->field['include'] );
    
    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_select.php
    Line 57: require_once( $icons_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 : field_button_set.php
    Line 46: *              ['format']      string Formatting options for paginate fields. Options include ('currency','nice','niceShort','timeAgoInWords' or a valid Date() f
    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 : enqueue.php
    Line 221: 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 : panel.php
    Line 237: include( $path );
    
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : plugins.php
    Line 245: require_once(ABSPATH . 'wp-admin/includes/plugin.php');
    
    Line 250: include_once( WC()->plugin_path() . '/includes/wc-template-functions.php' )
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : porto-wordpress-importer.php
    Line 204: require_once(ABSPATH . 'wp-admin/includes/upgrade.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 : importer.php
    Line 531: include(porto_plugins . '/importer/data/shortcodes_widget_data.json');
    Line 627: include(porto_plugins . '/importer/data/' . $demo . '/widget_data.json');
    Line 735: include(porto_plugins . '/importer/data/' . $demo . '/theme_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 : layout.php
    Line 5: require_once(porto_functions . '/layout/breadcrumbs.php');
    Line 7: require_once(porto_functions . '/layout/page-title.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 : content_type.php
    Line 2: require_once(porto_functions . '/content_type/portfolio_like.php');
    Line 3: require_once(porto_functions . '/content_type/blog_like.php');
    Line 4: require_once(porto_functions . '/content_type/meta_values.php');
    Line 5: require_once(porto_functions . '/content_type/meta_fields.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 : woocommerce.php
    Line 7: require_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 : content_types.php
    Line 5: require_once(porto_content_types . '/post.php');
    
    Line 7: require_once(porto_content_types . '/page.php');
    
    Line 9: require_once(porto_content_types . '/product.php');
    
    Line 11: require_once(porto_content_types . '/portfolio.php');
    
    Line 13: require_once(porto_content_types . '/member.php');
    
    Line 15: require_once(porto_content_types . '/faq.php');
    
    Line 17: require_once(porto_content_types . '/block.php');
    
    Line 19: require_once(porto_content_types . '/event.php');
    
    Line 1141: require_once(ABSPATH . 'wp-admin/includes/upgrade.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.

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
  • THEME TYPEWordPress theme 4.8
  • FILE NAMEwp.zip
  • FILE SIZE27647322 bytes
  • MD5b554f05097c1e8df377dc801f211edf7
  • SHA1f7bf07bc738d7a737f495d356319d634f263d3fa
  • LICENSECustom
  • FILES INCLUDEDCSS, PHP, XML, Bitmap images, Adobe Photoshop, Adobe Illustrator
  • THEMEFOREST PAGEhttp://themeforest.net/item/porto-responsive-wordpress-ecommerce-theme/9207399 ($59)
  • THEME URIhttp://www.newsmartwave.net/wordpress/porto
  • VERSION3.5.1
  • AUTHOR URI
  • TAGSwoocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
  • CREATION DATE2017-05-16
  • LAST FILE UPDATE2017-05-16
  • LAST VALIDATION2017-05-16 15:17
  • OTHER VERSIONS

    1.0 : 71%

Critical alerts
  1. Security breaches : Modification of PHP server settings Found ini_set in file save_settings.php.
    Line 13: @ini_set('max_execution_time', '10000');
    
    
    Line 14: @ini_set('memory_limit', '256M');
    
    
    Line 144: @ini_set('max_execution_time', '10000');
    
    
    Line 145: @ini_set('memory_limit', '256M');
    
    
    Line 275: @ini_set('max_execution_time', '10000');
    
    
    Line 276: @ini_set('memory_limit', '256M');
    
    
    Line 368: @ini_set('max_execution_time', '10000');
    
    
    Line 369: @ini_set('memory_limit', '256M');
    
    
    Line 475: @ini_set('max_execution_time', '10000');
    
    
    Line 476: @ini_set('memory_limit', '256M');
    
    
    Found ini_set in file Parser.php.
    Line 94: @ini_set('mbstring.internal_encoding', 'ascii');
    
    Line 184: @ini_set('precision',16);
    
    Line 222: @ini_set('precision',$precision);
    
    Line 228: @ini_set('mbstring.internal_encoding', $this->mb_internal_encoding);
    
    Found ini_set in file importer.php.
    Line 339: @ini_set('max_execution_time', '10000');
    Line 341: @ini_set('memory_limit', '256M');
  2. Unwanted files : hidden file(s) or folder(s) .easymin was found.
  3. Hidden admin bar : Hidden admin Bar Themes should not hide admin bar. Detected in file : functions.php.
  4. 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 16: get_currentuserinfo();
    
  5. Deprecated functions : get_option get_option('home') was found in the file layout.php. Use home_url() instead.
    Line 806: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1010: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1172: if(is_404()) $url = get_option('home'); else $url = '';
    Line 1716: if(is_404()) $url = get_option('home'); else $url = '';
    Line 2226: if(is_404()) $url = get_option('home'); else $url = '';
    Line 2744: if(is_404()) $url = get_option('home'); else $url = '';
  6. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was porto-content-types.zip porto-shortcodes.zip ultimate_vc_addons.zip envato-wordpress-toolkit.zip revslider.zip porto-widgets.zip js_composer.zip geodirectory-porto-theme-compatibility-pack.zip.
Warning
  1. core scripts deregistered : Core scripts deregistrationFound wp_deregister_script in functions.php. Themes must not deregister core scripts.
    Line 375: wp_deregister_script( 'porto-plugins' );
    Line 379: wp_deregister_script( 'porto-theme' );
    Found wp_deregister_script in vc_pie.php. Themes must not deregister core scripts.
    Line 48: wp_deregister_script( 'vc_pie' );
    
    
    Found wp_deregister_script in vc_progress_bar.php. Themes must not deregister core scripts.
    Line 42: wp_deregister_script( 'waypoints' );
    
    Found wp_deregister_script in framework.php. Themes must not deregister core scripts.
    Line 518: wp_deregister_script( 'wpb_ace' );
    
  2. theme tags : Presence of bad theme tagsFound wrong tag woocommerce in style.css header.Found wrong tag corporate in style.css header.Found wrong tag ecommerce in style.css header.Found wrong tag responsive in style.css header.The tag blue has been deprecated, it must be removed from style.css header.The tag black has been deprecated, it must be removed from style.css header.The tag green has been deprecated, it must be removed from style.css header.The tag white has been deprecated, it must be removed from style.css header.The tag light has been deprecated, it must be removed from style.css header.The tag dark has been deprecated, it must be removed from style.css header.The tag red has been deprecated, it must be removed from style.css header.The tag fixed-layout has been deprecated, it must be removed from style.css header.The tag responsive-layout has been deprecated, it must be removed from style.css header.Themes that use the tag accessibility-ready will need to undergo an accessibility review.
    See https://make.wordpress.org/themes/handbook/review/accessibility/
  3. Text domain : Incorrect use of translation functions.Wrong installation directory for the theme name. The directory name must match the slug of the theme. This theme's correct slug and text-domain is porto.
  4. Text domain : Incorrect use of translation functions.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 shipping-calculator.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals-v1.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file cart-totals-v2.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After save the changes, will be regenerate the css files (skin_', .css, skin_rtl_, '.css) in ' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After save the changes, will be regenerate the css files (skin_', .css, skin_rtl_, '.css) in ', 'porto' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_', '.css in ' in file settings.php.Found a translation function that has an incorrect number of arguments. Function __, with the arguments 'After compile, will be regenerate the css files (theme_', .css, theme_rtl_, '.css, plugins_', '.css, plugins_rtl_', '.css in ', 'porto' in file settings.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'No Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '1 Comment' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '% Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Comments Off' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Enter your password to view comments.' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Comment on %s' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '% Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'No Comments' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments '1 Comment' in file general.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Use commas instead of %s to separate excluded categories.' in file woocommerce.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'billing_first_name' in file woocommerce.php.Found a translation function that is missing a text-domain. Function esc_attr_e, with the arguments 'billing_last_name' in file woocommerce.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 porto, woocommerce, yith-woocommerce-wishlist, downloads_remaining, js_composer, Porto, .css, skin_rtl_, .css, theme_rtl_, redux-framework, tgmpa, wordpress-importer, wysija-newsletters, porto-shortcodes, blank, textdomain.
  5. PHP short tags : Presence of PHP short tagsPHP short tags were found in file parsedown.php. "This practice is discouraged because they are only available if enabled with short_open_tag php.ini configuration file directive, or if PHP was configured with the --enable-short-tags option" (php.net), which is not the case on many servers.
    Line 838: if (preg_match('/^\[(.+?)\]:[ ]*<?(\S+?)>?(?:[ ]+['\'(](.+)['\')])?[ ]*$/', $Line['text'], $matches))
    
  6. Hidden admin bar : Hidden admin Bar in CSSThemes should not hide admin bar. Detected in file theme.css.
  7. Screenshot : Screenshot fileScreenshot size is 800x600px. 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 settings.php.
    Line 5836: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto
    Line 5843: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'port
    Line 5836: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto
    Line 5843: 'desc' => __('Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'port
    Possible hard-coded links were found in the file class.redux_themecheck.php.
    Line 61: echo sprintf( 'The theme you are testing has %s embedded. We invite you to read the %sTheme-Check Documentation%s to understand some warnings you will see because of Redux.', '<a href='http://reduxframework.com' target='_blank'>Redux Framework</a>', '<a href='
  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 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 : Parser.php
    Line 189: if ($this->literal('@include') &&
    
    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.php
    Line 107: require_once( porto_admin . '/admin_pages/welcome.php' );
    
    
    Line 111: require_once( porto_admin . '/admin_pages/system-status.php' );
    
    
    Line 115: require_once( porto_admin . '/admin_pages/install-demos.php' );
    
    
    Line 119: require_once( porto_admin . '/admin_pages/porto-plugins.php' );
    
    
    Line 244: require_once(porto_admin . '/theme_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 : theme_options.php
    Line 7: require_once( porto_admin . '/functions.php' );
    
    
    Line 10: require_once( porto_admin . '/ReduxCore/framework.php' );
    
    
    Line 13: require_once( porto_admin . '/theme_options/settings.php' );
    
    
    Line 15: require_once( porto_admin . '/theme_options/save_settings.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 : save_settings.php
    Line 21: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 152: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 283: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 376: require_once( porto_admin . '/scssphp/scss.inc.php' );
    
    
    Line 484: require_once( porto_admin . '/lessphp/lessc.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 : admin_complete.php
    Line 3: require_once(porto_admin . '/theme_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 : Functions.php
    Line 902: $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.
    The theme appears to use include or require : Parser.php
    Line 3: require_once( dirname(__FILE__).'/Cache.php');
    
    Line 537: return include($cache_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 : framework.php
    Line 35: require_once( dirname( __FILE__ ) . '/inc/class.redux_instances.php' );
    
    Line 36: require_once( dirname( __FILE__ ) . '/inc/lib.redux_instances.php' );
    
    Line 47: require_once( dirname( __FILE__ ) . '/inc/class.redux_api.php' );
    
    Line 50: require_once( dirname( __FILE__ ) . '/inc/class.redux_helpers.php' );
    
    Line 53: require_once( dirname( __FILE__ ) . '/inc/class.redux_functions.php' );
    
    Line 54: require_once( dirname( __FILE__ ) . '/inc/class.p.php' );
    
    Line 56: require_once( dirname( __FILE__ ) . '/inc/class.redux_filesystem.php' );
    
    Line 59: require_once( dirname( __FILE__ ) . '/inc/class.redux_themecheck.php' );
    
    Line 1494: require_once( $class_file );
    
    Line 1569: include_once( 'core/enqueue.php' );
    
    Line 1883: include( ABSPATH . 'wp-includes/pluggable.php' );
    
    Line 2320: require_once( $class_file );
    
    Line 2692: include_once( 'core/enqueue.php' );
    
    Line 2696: include_once( 'core/panel.php' );
    
    Line 2846: require_once( $class_file );
    
    Line 3071: include_once( 'core/panel.php' );
    
    Line 3198: 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 : extension_customizer.php
    Line 629: 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 : extension_custom_fonts.php
    Line 134: //require_once 'System.php'; // Wordpress core 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 : class.redux_sass.php
    Line 140: require( 'scssphp/scss.inc.php' );
    
    Line 191: require( 'scssphp/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 : class.redux_functions.php
    Line 91: 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 : 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 : class.redux_filesystem.php
    Line 78: require_once( ABSPATH . '/wp-admin/includes/template.php' );
    
    Line 79: 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.redux_api.php
    Line 65: require_once( $extension['path'] );
    
    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.redux_helpers.php
    Line 99: require_once( ABSPATH . 'wp-admin/includes/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 : sysinfo.php
    Line 54: require_once 'browser.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_raw.php
    Line 32: require_once( $this->field['include'] );
    
    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_select.php
    Line 57: require_once( $icons_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 : field_button_set.php
    Line 46: *              ['format']      string Formatting options for paginate fields. Options include ('currency','nice','niceShort','timeAgoInWords' or a valid Date() f
    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 : enqueue.php
    Line 221: 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 : panel.php
    Line 237: include( $path );
    
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : plugins.php
    Line 245: require_once(ABSPATH . 'wp-admin/includes/plugin.php');
    
    Line 250: include_once( WC()->plugin_path() . '/includes/wc-template-functions.php' )
    If these are being used to include separate sections of a template from independent files, then get_template_part() should be used instead. Otherwise, use include_once or require_once instead.
    The theme appears to use include or require : porto-wordpress-importer.php
    Line 204: require_once(ABSPATH . 'wp-admin/includes/upgrade.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 : importer.php
    Line 531: include(porto_plugins . '/importer/data/shortcodes_widget_data.json');
    Line 627: include(porto_plugins . '/importer/data/' . $demo . '/widget_data.json');
    Line 735: include(porto_plugins . '/importer/data/' . $demo . '/theme_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 : layout.php
    Line 5: require_once(porto_functions . '/layout/breadcrumbs.php');
    Line 7: require_once(porto_functions . '/layout/page-title.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 : content_type.php
    Line 2: require_once(porto_functions . '/content_type/portfolio_like.php');
    Line 3: require_once(porto_functions . '/content_type/blog_like.php');
    Line 4: require_once(porto_functions . '/content_type/meta_values.php');
    Line 5: require_once(porto_functions . '/content_type/meta_fields.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 : woocommerce.php
    Line 7: require_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 : content_types.php
    Line 5: require_once(porto_content_types . '/post.php');
    
    Line 7: require_once(porto_content_types . '/page.php');
    
    Line 9: require_once(porto_content_types . '/product.php');
    
    Line 11: require_once(porto_content_types . '/portfolio.php');
    
    Line 13: require_once(porto_content_types . '/member.php');
    
    Line 15: require_once(porto_content_types . '/faq.php');
    
    Line 17: require_once(porto_content_types . '/block.php');
    
    Line 19: require_once(porto_content_types . '/event.php');
    
    Line 1141: require_once(ABSPATH . 'wp-admin/includes/upgrade.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.
Other checked themes