0
Résultats de validation

Porto

Porto

WordPress 6.5.2 theme
0
  • TYPE DE THèMEThème WordPress %s 6.5.2
  • NOM DU FICHIERporto-caylinet.zip
  • TAILLE DU FICHIER10272484 octets
  • MD5fc51891cee959ca8934bcf351cfc9111
  • SHA1b84d15bc82b0716ea813d63103477d219a86ff46
  • LICENCEPropriétaire
  • FICHIERS INCLUSCSS, PHP, XML, Bitmap images, Adobe Illustrator
  • URI DU THèME URIhttps://www.portotheme.com/wordpress/porto
  • VERSION6.4.1
  • URI DE L'AUTEUR
  • 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,
  • DATE DE CRéATION2022-11-02
  • DERNIèRE MISE à JOUR DU FICHIER2022-11-02
  • DERNIèRE VALIDATION2022-11-02 00:49
Ce thème n'est peut être pas libre. Themecheck ne distribue pas de thèmes commerciaux.
Alertes critiques
  1. Failles de sécurité : Modification des paramètres du serveur PHP ini_set trouvé dans le fichier Parser.php. 90: @ini_set( 'mbstring.internal_encoding', 'ascii' );177: @ini_set( 'precision', 16 );212: @ini_set( 'precision', $precision );218: @ini_set( 'mbstring.internal_encoding', $this->mb_internal_encoding );
  2. Failles de sécurité : Utilisation de base64_decode() base64_decode trouvé dans le fichier vc_section.php. 170: $output .= rawurldecode( base64_decode( porto_strip_script_tags( $top_divider_custom ) ) );206: $output .= rawurldecode( base64_decode( porto_strip_script_tags( $bottom_divider_custom ) ) );base64_decode trouvé dans le fichier porto-studio.php. 186: $block_content = base64_decode( $block['content'] );
  3. Failles de sécurité : Utilisation de base64_encode() base64_encode trouvé dans le fichier Functions.php.
     $buf = $useBase64 ? base64_encode( $buf ) : rawurlencode( $buf );
     $returner = ''data:image/svg+xml;base64,'.base64_encode( $returner ).''';
    base64_encode trouvé dans le fichier wpb-elements.php.
     'value' => base64_encode( '' ),
     'value' => base64_encode( '' ),
  4. Code malveillant : Opérations sur système de fichiers fopen trouvé dans le fichier class.redux_helpers.php. 646: // $fp = fopen( $file, 'r' );fread trouvé dans le fichier class.redux_helpers.php. 649: // $file_data = fread( $fp, 8192 );fclose trouvé dans le fichier class.redux_helpers.php. 652: // fclose( $fp );file_get_contents trouvé dans le fichier Cache.php. 107: $c = file_get_contents($fileCache);file_put_contents trouvé dans le fichier Cache.php. 135: file_put_contents($fileCache, $c);file_put_contents trouvé dans le fichier SourceMapGenerator.php. 146: if (file_put_contents($file, $content) === false) {file_get_contents trouvé dans le fichier SourceMapGenerator.php. 225: $content[] = file_get_contents($sourceFile);fopen trouvé dans le fichier Compiler.php. 182: $this->stderr = fopen('php://stderr', 'w');fwrite trouvé dans le fichier Compiler.php. 2912: fwrite($this->stderr, 'File $fname on line $line DEBUG: $value\n');2922: fwrite($this->stderr, 'File $fname on line $line WARN: $value\n');fwrite trouvé dans le fichier Compiler.php. 2912: fwrite($this->stderr, 'File $fname on line $line DEBUG: $value\n');2922: fwrite($this->stderr, 'File $fname on line $line WARN: $value\n');file_get_contents trouvé dans le fichier Compiler.php. 4669: $code = file_get_contents($path);file_put_contents trouvé dans le fichier lessc.inc.php. 176: return file_put_contents( $outFname, $out );file_get_contents trouvé dans le fichier Import.php. 170: $contents = new Less_Tree_Anonymous( file_get_contents( $full_path ), 0, array(), true );file_put_contents trouvé dans le fichier Cache.php. 71: file_put_contents( $vars_file, $lessvars );113: file_put_contents( $list_file, $cache );116: file_put_contents( $output_file, $compiled );file_put_contents trouvé dans le fichier Cache.php. 71: file_put_contents( $vars_file, $lessvars );113: file_put_contents( $list_file, $cache );116: file_put_contents( $output_file, $compiled );file_put_contents trouvé dans le fichier Cache.php. 71: file_put_contents( $vars_file, $lessvars );113: file_put_contents( $list_file, $cache );116: file_put_contents( $output_file, $compiled );file_get_contents trouvé dans le fichier Cache.php. 281: $list = explode( '\n', file_get_contents( $list_file ) );file_get_contents trouvé dans le fichier Parser.php. 54: $this->input = file_get_contents( $this->currentFile['filename'] );file_get_contents trouvé dans le fichier import.php. 69: $contents = new Less_Tree_Anonymous( file_get_contents($full_path), 0, array(), true );file_put_contents trouvé dans le fichier Generator.php. 151: if ( file_put_contents( $file, $content ) === false ) {file_get_contents trouvé dans le fichier Generator.php. 266: $content[] = file_get_contents( $sourceFile );file_get_contents trouvé dans le fichier Functions.php. 907: $buf = @file_get_contents( $filePath );file_get_contents trouvé dans le fichier Parser.php. 618: $cache = unserialize( file_get_contents( $cache_file ) );681: $this->input = file_get_contents( $file_path );file_put_contents trouvé dans le fichier Parser.php. 657: file_put_contents( $cache_file, serialize( $rules ) );660: file_put_contents( $cache_file, '<?php return '.self::ArgString( $rules ).'664: file_put_contents( $cache_file, '<?php return '.var_export( $rules, true ).file_put_contents trouvé dans le fichier Parser.php. 657: file_put_contents( $cache_file, serialize( $rules ) );660: file_put_contents( $cache_file, '<?php return '.self::ArgString( $rules ).'664: file_put_contents( $cache_file, '<?php return '.var_export( $rules, true ).file_put_contents trouvé dans le fichier Parser.php. 657: file_put_contents( $cache_file, serialize( $rules ) );660: file_put_contents( $cache_file, '<?php return '.self::ArgString( $rules ).'664: file_put_contents( $cache_file, '<?php return '.var_export( $rules, true ).file_get_contents trouvé dans le fichier Parser.php. 618: $cache = unserialize( file_get_contents( $cache_file ) );681: $this->input = file_get_contents( $file_path );file_get_contents trouvé dans le fichier importer-api.php. 156: $body = @file_get_contents( $source_path );
  5. Menu Admin : Les thèmes doivent utiliser add_theme_page () pour ajouter des pages admin. Fichier framework.php : 1275: // wrappers and need to be appened to using add_submenu_page.1327: 'add_submenu_page',1398: 'add_submenu_page',Fichier framework.php : 1275: // wrappers and need to be appened to using add_submenu_page.1327: 'add_submenu_page',1398: 'add_submenu_page',Fichier framework.php : 1365: 'add_menu_page',Fichier framework.php : 1275: // wrappers and need to be appened to using add_submenu_page.1327: 'add_submenu_page',1398: 'add_submenu_page',Fichier speed_optimize_wizard.php : 93: add_submenu_page( 'porto', esc_html__( 'Speed Optimize Wizard', 'porto' ), Fichier setup_wizard.php : 1059: add_submenu_page( 'porto', esc_html__( 'Setup Wizard', 'porto' ), esc_html_Fichier admin.php : 95: $welcome_screen = add_menu_page( 'Porto', 'Porto', 'administrator', 'porto', array( $this, 'wFichier admin.php : 96: $welcome = add_submenu_page( 'porto', __( 'Dashboard', 'porto' ), __( 'Dashboard', 'po98: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme Optio99: $theme_options = add_submenu_page( 'porto', __( 'Advanced Options', 'porto' ), __( 'Advanced101: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme OptioFichier admin.php : 96: $welcome = add_submenu_page( 'porto', __( 'Dashboard', 'porto' ), __( 'Dashboard', 'po98: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme Optio99: $theme_options = add_submenu_page( 'porto', __( 'Advanced Options', 'porto' ), __( 'Advanced101: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme OptioFichier admin.php : 96: $welcome = add_submenu_page( 'porto', __( 'Dashboard', 'porto' ), __( 'Dashboard', 'po98: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme Optio99: $theme_options = add_submenu_page( 'porto', __( 'Advanced Options', 'porto' ), __( 'Advanced101: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme OptioFichier admin.php : 96: $welcome = add_submenu_page( 'porto', __( 'Dashboard', 'porto' ), __( 'Dashboard', 'po98: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme Optio99: $theme_options = add_submenu_page( 'porto', __( 'Advanced Options', 'porto' ), __( 'Advanced101: $theme_options = add_submenu_page( 'porto', __( 'Theme Options', 'porto' ), __( 'Theme OptioFichier class-tools.php : 27: add_submenu_page( 'porto', __( 'Tools', 'porto' ), __( 'Tools', 'porto' ), Fichier class-version-control.php : 57: add_submenu_page( 'porto', __( 'Version Control', 'porto' ), __( 'Version CFichier class-page-layouts.php : 184: add_submenu_page( 'porto', __( 'Page Layouts', 'porto' ), __( 'Page Layouts
  6. Inclusion de plugin : Présence de fichier zip Les plugins ne sont pas autorisés dans les thèmes. Le fichier zip geodirectory-porto-theme-compatibility-pack.zip a été trouvé.
Attention
  1. Script de core désabonné : Désabonnement d'un script de coreAppel à wp_deregister_script dans functions.php. Les thèmes ne doivent appeler wp_deregister_script sur des scripts du core. 878: // wp_deregister_script( 'isotope' );1187: wp_deregister_script( 'dokan-chart' );
  2. tags du thème : Présence de tags inconnusTag inconnu woocommerce trouvé dans l'entête du fichier style.css.Tag inconnu corporate trouvé dans l'entête du fichier style.css.Tag inconnu ecommerce trouvé dans l'entête du fichier style.css.Tag inconnu responsive trouvé dans l'entête du fichier style.css.Le tag blue est obsolète, il ne doit pas figurer dans le header de style.css.Le tag black est obsolète, il ne doit pas figurer dans le header de style.css.Le tag green est obsolète, il ne doit pas figurer dans le header de style.css.Le tag white est obsolète, il ne doit pas figurer dans le header de style.css.Le tag light est obsolète, il ne doit pas figurer dans le header de style.css.Le tag dark est obsolète, il ne doit pas figurer dans le header de style.css.Le tag red est obsolète, il ne doit pas figurer dans le header de style.css.Le tag fixed-layout est obsolète, il ne doit pas figurer dans le header de style.css.Le tag responsive-layout est obsolète, il ne doit pas figurer dans le header de style.css.Les thèmes qui utilisent le tag accessibility-ready doivent concoder avec les règles de la revue d'accessibilité.
    Voir https://make.wordpress.org/themes/handbook/review/accessibility/
  3. Text domain : Utilisation incorrecte des fonctions de traduction.Mauvaus répertoire d'installation pour le thème. Le nom du répertoir doit correspondre au slug du thème. Le slug de ce thème ainsi que le text-domain est porto.
  4. Text domain : Utilisation incorrecte des fonctions de traduction.Plusieurs text-domain sont utilisés dans le thème. Cela signifie que le thème n'est pas compatible avec les language packs de WordPress. Les domaines trouvés sont porto, js_composer, woocommerce, yith-woocommerce-wishlist, yith-woocommerce-compare, redux-framework, tgmpa, porto-functionality.
  5. Balises courtes PHP : Présence de balises PHP courtesPrésence de balises PHP courtes dans le fichier parsedown.php. "Il est conseillé de ne pas les utiliser car elles ne sont seulement disponibles lors de l'activation de la directive de configuration short_open_tag du php.ini, ou si PHP a été configuré avec l'option --enable-short-tags" (php.net), ce qui n'est pas le cas sur de nombreux serveurs.653: if ( preg_match( '/^\[(.+?)\]:[ ]*<?(\S+?)>?(?:[ ]+['\'(](.+)['\')])?[ ]*$/', $Line['text'], $matches ) ) {
  6. Implémentation de l'internationalisation : Utilisation correcte de ___al(La variable $key a été trouvée dans une fonction de traduction dans le fichier speed_optimize_wizard.php . Les appels de fonctions de traduction ne doivent pas contenir de variables PHP.
  7. Screenshot : Copie d'écranLa taille du screenshot est 880x660px. La taille recommandée est 1200x900, pour prendre en compte les affichages HiDPI. Bien qu'une résolution de 1200x900 soit recommandée, toutes les images au format 4:3 sont acceptables.Mauvaise extension de fichier screenshot ! Le fichier screenshot.png n'est pas un véritable fichier JPG. Le type détecté est : "image/png".
Info
  1. Liens statiques : Présence de liens codés en durLien potentiellement codés en dur trouvé dans le fichier yit-pointers.php.72: '<h3> %s </h3> <p> %s </p> <p> %s <a href='http://yithemes.com/product-category/plugins/' target='_blank'>Yithemes.com90: '<h3> %s </h3> <p> %s </p> <p> %s <a href='http://yithemes.com/product-category/plugins/' target='_blank'>Yithemes.com72: '<h3> %s </h3> <p> %s </p> <p> %s <a href='http://yithemes.com/product-category/plugins/' target='_blank'>Yithemes.com90: '<h3> %s </h3> <p> %s </p> <p> %s <a href='http://yithemes.com/product-category/plugins/' target='_blank'>Yithemes.comLien potentiellement codés en dur trouvé dans le fichier speed_optimize_wizard.php.489: <input type='checkbox' value='true' name='google_webfont' <?php echo isset( $porto_settings['google-webfont-loader'] ) ? checked( $porto_settings['google-webfont-loader'], true, false ) : ''; ?>> <?php printf( esc_html__( 'Enable %1$sWeb Font Loader%2$s for Google Fonts', 'porto' ), '<a href='https://developers.google.com/fonts/docs/webfont_loader' target='_blank' re492: <p><?php printf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re929: <?php printf( esc_html__( 'This improves page load time as the browser caches preloaded resources so they are available immediately when needed. By using this option, you can increase page speed about 1 ~ 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re492: <p><?php printf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re929: <?php printf( esc_html__( 'This improves page load time as the browser caches preloaded resources so they are available immediately when needed. By using this option, you can increase page speed about 1 ~ 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re1049: <a href='https://gtmetrix.com/leverage-browser-caching.html' target='_blank' rel='noLien potentiellement codés en dur trouvé dans le fichier setup_wizard.php.1828: <p><?php printf( esc_html__( '%1$sHubSpot%2$s\'s official WordPress plugin allows you to add forms, popups, and live chat to your website and integrate with the best WordPress CRM.', 'porto' ), '<a href='https://www.hubspot.com/'>', '</a>' ); ?></p>2051: <p><em><i class='fas fa-info-circle' style='font-size: 1.2em'></i></em> More details about item support can be found in the ThemeForest <a href='http://themeforest.net/page/item_support_policy' target='_blank' rel='noope2073: <li class='documentation'><i class='status fas fa-book'></i> <a href='http://www.portotheme.com/wordpress/porto/documentation'><?php esc_html_e( 2074: <li class='woocommerce documentation'><i class='status fas fa-book'></i> <a href='https://docs.woocommerce.com/document/woocommerce-101-video-series/'><?php 2076: <li class='rating'><i class='status fas fa-star'></i> <a href='http://themeforest.net/downloads'><?php esc_html_e( 'Leave an Item Rating',2080: <p><em><i class='fas fa-info-circle' style='font-size: 1.2em'></i></em> Please come back and <a href='http://themeforest.net/downloads' target='_blank' rel='noopener noreferrer'2076: <li class='rating'><i class='status fas fa-star'></i> <a href='http://themeforest.net/downloads'><?php esc_html_e( 'Leave an Item Rating',2080: <p><em><i class='fas fa-info-circle' style='font-size: 1.2em'></i></em> Please come back and <a href='http://themeforest.net/downloads' target='_blank' rel='noopener noreferrer'Lien potentiellement codés en dur trouvé dans le fichier settings.php.968: 'desc' => sprintf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re1327: 'desc' => sprintf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re968: 'desc' => sprintf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re1327: 'desc' => sprintf( esc_html__( 'By using this option, you can increase page speed about 4 percent in %1$sGoogle PageSpeed Insights%2$s for both of mobile and desktop.', 'porto' ), '<a href='https://developers.google.com/speed/pagespeed/insights/' target='_blank' re11617: 'desc' => __( 'Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto11625: 'desc' => __( 'Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'port11617: 'desc' => __( 'Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeIn', 'porto11625: 'desc' => __( 'Please input animation. Please reference <a href='http://daneden.github.io/animate.css/'>animate.css</a>. ex: fadeOut', 'portLien potentiellement codés en dur trouvé dans le fichier admin.php.42: $this->add_wp_toolbar_menu_item( $porto_parent_menu_title, false, admin_url( 'admin.php?page=porto' ), array( 'class' => 'porto-menu' ), 'porto' );43: $this->add_wp_toolbar_menu_item( __( 'Dashboard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto' ), array(), 'porto-dashboard' );44: $this->add_wp_toolbar_menu_item( __( 'Page Layouts', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-page-layouts' ) );52: $this->add_wp_toolbar_menu_item( __( 'Setup Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-setup-wizard' ) );53: $this->add_wp_toolbar_menu_item( __( 'Speed Optimize Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-speed-optimize-wizard' ) );55: $this->add_wp_toolbar_menu_item( __( 'Version Control', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-version-control' ) );57: $this->add_wp_toolbar_menu_item( __( 'Tools', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-tools' ) );263: return new WP_Error( 'not_registerd', __( 'Please <a href='admin.php?page=porto'>register</a> Porto theme to get access to pre-built d384: <p><?php echo sprintf( esc_html__( 'Please %1$sregister%2$s Porto theme to get access to pre-built demo websites and auto updates.', 'porto' ), '<a href='admin.php?page=porto'>', '</a>' ); ?></p>419: $('.themes .theme.active .theme-screenshot').after('<div class='notice update-message notice-error notice-alt'><p>Please <a href='admin.php?page=porto' class='button-link'>verify purchase</a> to get update42: $this->add_wp_toolbar_menu_item( $porto_parent_menu_title, false, admin_url( 'admin.php?page=porto' ), array( 'class' => 'porto-menu' ), 'porto' );43: $this->add_wp_toolbar_menu_item( __( 'Dashboard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto' ), array(), 'porto-dashboard' );44: $this->add_wp_toolbar_menu_item( __( 'Page Layouts', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-page-layouts' ) );52: $this->add_wp_toolbar_menu_item( __( 'Setup Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-setup-wizard' ) );53: $this->add_wp_toolbar_menu_item( __( 'Speed Optimize Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-speed-optimize-wizard' ) );55: $this->add_wp_toolbar_menu_item( __( 'Version Control', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-version-control' ) );57: $this->add_wp_toolbar_menu_item( __( 'Tools', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-tools' ) );263: return new WP_Error( 'not_registerd', __( 'Please <a href='admin.php?page=porto'>register</a> Porto theme to get access to pre-built d384: <p><?php echo sprintf( esc_html__( 'Please %1$sregister%2$s Porto theme to get access to pre-built demo websites and auto updates.', 'porto' ), '<a href='admin.php?page=porto'>', '</a>' ); ?></p>419: $('.themes .theme.active .theme-screenshot').after('<div class='notice update-message notice-error notice-alt'><p>Please <a href='admin.php?page=porto' class='button-link'>verify purchase</a> to get update42: $this->add_wp_toolbar_menu_item( $porto_parent_menu_title, false, admin_url( 'admin.php?page=porto' ), array( 'class' => 'porto-menu' ), 'porto' );43: $this->add_wp_toolbar_menu_item( __( 'Dashboard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto' ), array(), 'porto-dashboard' );44: $this->add_wp_toolbar_menu_item( __( 'Page Layouts', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-page-layouts' ) );52: $this->add_wp_toolbar_menu_item( __( 'Setup Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-setup-wizard' ) );53: $this->add_wp_toolbar_menu_item( __( 'Speed Optimize Wizard', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-speed-optimize-wizard' ) );55: $this->add_wp_toolbar_menu_item( __( 'Version Control', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-version-control' ) );57: $this->add_wp_toolbar_menu_item( __( 'Tools', 'porto' ), 'porto', admin_url( 'admin.php?page=porto-tools' ) );263: return new WP_Error( 'not_registerd', __( 'Please <a href='admin.php?page=porto'>register</a> Porto theme to get access to pre-built d384: <p><?php echo sprintf( esc_html__( 'Please %1$sregister%2$s Porto theme to get access to pre-built demo websites and auto updates.', 'porto' ), '<a href='admin.php?page=porto'>', '</a>' ); ?></p>419: $('.themes .theme.active .theme-screenshot').after('<div class='notice update-message notice-error notice-alt'><p>Please <a href='admin.php?page=porto' class='button-link'>verify purchase</a> to get updateLien potentiellement codés en dur trouvé dans le fichier header-builder.php.685: <a href='https://youtu.be/pk2W281QUa8' class='button' target='_blank' rel='noopener Lien potentiellement codés en dur trouvé dans le fichier welcome.php.79: <?php printf( esc_html__( 'Before you get started, please be sure to always check out %1$sthis documentation%2$s. We outline all kinds of good information, and provide you with all the details you need to use Porto.', 'porto' ), '<a href='http://www.portotheme.com/wordpress/porto/documentation' target='_blank' re83: <?php printf( esc_html__( 'If you are unable to find your answer in our documentation, we encourage you to contact us through %1$ssupport page%2$s with your site CPanel (or FTP) and WordPress admin details. We are very happy to help you and you will get reply from us more faster than you expected.', 'porto' ), '<a href='http://www.portotheme.com/support' target='_blank' rel='noopener noreferrer86: <a href='https://www.portotheme.com/wordpress/porto/documentation/changelog/' targetLien potentiellement codés en dur trouvé dans le fichier class-tgm-plugin-activation.php.2751: $action_links['register'] = '<span style='color:#666'>Please</span> <a href='admin.php?page=porto'>register</a> <span style='color:#666'>the theme</span
  2. Fichiers optionnels : Présence du fichierde style pour les écritures de droite vers la gauche rtl.cssCe thème ne contient pas le fichier optionnel rtl.php.
  3. Fichiers optionnels : Présence du fichier-template fron-*page.phpCe thème ne contient pas le fichier optionnel front-page.php.
  4. Fichiers optionnels : Présence du fichier-template de page d'accueil home.phpCe thème ne contient pas le fichier optionnel home.php.
  5. Fichiers optionnels : Présence du fichier-template de catégorie category.phpCe thème ne contient pas le fichier optionnel category.php.
  6. Fichiers optionnels : Présence du fichier-template des tags tag.phpCe thème ne contient pas le fichier optionnel tag.php.
  7. Fichiers optionnels : Présence du fichier template de taxinomie taxonomy.phpCe thème ne contient pas le fichier optionnel taxonomy.php.
  8. Fichiers optionnels : Présence de du fichier-template des dates et heures date.phpCe thème ne contient pas le fichier optionnel date.php.
  9. Fichiers optionnels : Présence du fichier-template des archives archive.phpCe thème ne contient pas le fichier optionnel archive.php.
  10. Fichiers optionnels : Présence du fichier-template des pièces jointes attachment.phpCe thème ne contient pas le fichier optionnel attachment.php.
  11. Fichiers optionnels : Présence du fichier-template des images image.phpCe thème ne contient pas le fichier optionnel image.php.
  12. Utilisation d'includes : Utilisation de include ou de de requireLe thème semble utiliser include ou require : style-editor.php 34: require_once( PORTO_LIB . '/lib/color-lib.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : extension_custom_fonts.php 145: // require_once 'System.php'; // WordPress core file Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : framework.php 1552: require_once 'core/enqueue.php';2743: require_once 'core/enqueue.php';2801: require_once 'core/panel.php';3151: require_once 'core/panel.php'; Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : theme_options.php 9: require_once( PORTO_ADMIN . '/functions.php' );40: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' );47: require_once( PORTO_ADMIN . '/theme_options/settings.php' );48: require_once( PORTO_ADMIN . '/theme_options/save_settings.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : speed_optimize_wizard.php 603: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' );849: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : class-porto-demo-history.php 262: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : setup_wizard.php 1000: require_once 'class-porto-demo-history.php';1871: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' );2533: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' );2993: require_once( PORTO_ADMIN . '/ReduxCore/framework.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : Parser.php 399: if ($this->literal('@include', 8) && Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : Functions.php 886: $mime = require('mime'); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : header-builder.php 165: include_once 'classes/simple-notice-control.php'; Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : class-version-control.php 166: require_once( ABSPATH . '/wp-admin/includes/file.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : importer-api.php 83: require_once( ABSPATH . '/wp-admin/includes/file.php' );161: require_once( ABSPATH . '/wp-admin/includes/file.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : parsers.php 82: require_once( ABSPATH . '/wp-admin/includes/file.php' );388: require_once( ABSPATH . '/wp-admin/includes/file.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : porto-parsers.php 85: require_once( ABSPATH . '/wp-admin/includes/file.php' );393: require_once( ABSPATH . '/wp-admin/includes/file.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : wordpress-importer.php 174: require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : porto-wordpress-importer.php 215: require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : plugins.php 403: require_once( ABSPATH . 'wp-admin/includes/plugin.php' );410: include_once( WC()->plugin_path() . '/includes/wc-template-functions.php' ) Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : lazy-load.php 61: require_once( PORTO_LIB . '/lib/color-lib.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : woocommerce-swatches.php 23: require 'classes/class-product-swatches-tab.php'; Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : content_type.php 2: require_once( PORTO_FUNCTIONS . '/content_type/portfolio_like.php' );3: require_once( PORTO_FUNCTIONS . '/content_type/blog_like.php' );4: require_once( PORTO_FUNCTIONS . '/content_type/meta_values.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : class-dynamic-style.php 144: require_once( PORTO_DIR . '/style.php' );152: require_once( PORTO_DIR . '/style-internal.php' );168: require_once( PORTO_DIR . '/style-internal.php' );304: require_once( PORTO_ADMIN . '/scssphp/scss.inc.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : woocommerce.php 9: require_once( ABSPATH . 'wp-admin/includes/plugin.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : style-internal.php 38: require_once( PORTO_LIB . '/lib/color-lib.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.Le thème semble utiliser include ou require : style.php 76: require_once( PORTO_LIB . '/lib/color-lib.php' ); Si ces fonctions sont utilisées pour inclure des sections séparées d'un modèle à partir de fichiers indépendants, alors get_template_part () doit être utilisé à la place.
Other checked themes