0
Résultats de validation

The Keynote

The Keynote

WordPress 4.9.8 theme
0
Alertes critiques
  1. Customizer : Sanitization des Customizer settings Un setting Customizer a été trouvé sans callback de sanitization dans le fichier gdlr-customizer.php. Tous les appels à la méthode add_setting() doivent déclarer une fonction de filtrage.
  2. Failles de sécurité : Utilisation de base64_decode() base64_decode trouvé dans le fichier twitteroauth.php.
    Line 208: $decoded_sig = base64_decode($signature);
  3. Failles de sécurité : Utilisation de base64_encode() base64_encode trouvé dans le fichier twitteroauth.php.
     return base64_encode(hash_hmac('sha1', $base_string, $key, true));
     return base64_encode($signature);
  4. Présence d'iframes : Les iframes sont parfois utilisées pour charger du contenu non désirés ou du code malicieux sur des sites tiers <iframe src="https://www.youtube' . ($theme_option['disable-cookie-youtube'] == 'enable'? '-nocookie': '') . '.com/embed/' . $id[1] . '?wmode=transparent' . $id[2] . '" width="' . $width . '" height="' . $height . '" > trouvé dans le fichier gdlr-media.php.
    Line 66: return '<iframe src='https://www.youtube' . ($theme_option['disable-cookie-youtube'
  5. Code malveillant : Opérations sur système de fichiers file_get_contents trouvé dans le fichier gdlr-font-loader.php.
    Line 68: $google_fonts = json_decode(file_get_contents($google_font_file), true);
    file_get_contents trouvé dans le fichier gdlr-function-regist.php.
    Line 81: $default_admin_option = unserialize(file_get_contents($default_file));
    fopen trouvé dans le fichier gdlr-function-regist.php.
    Line 104: //$file_stream = @fopen($file_url, 'w');
    fwrite trouvé dans le fichier gdlr-function-regist.php.
    Line 105: //fwrite($file_stream, serialize($theme_option));
    fclose trouvé dans le fichier gdlr-function-regist.php.
    Line 106: //fclose($file_stream);
    fopen trouvé dans le fichier gdlr-admin-option.php.
    Line 22: $file_stream = @fopen($file_url, 'w');
    fwrite trouvé dans le fichier gdlr-admin-option.php.
    Line 57: fwrite( $file_stream, str_replace('#gdlr#', $value, $option['selector']) . 
    Line 93: fwrite($file_stream, $style);
    Line 98: fwrite($file_stream, $end_of_file);
    Line 102: fwrite($file_stream, str_replace('\r\n', '\n', $theme_option['additional-st
    fwrite trouvé dans le fichier gdlr-admin-option.php.
    Line 57: fwrite( $file_stream, str_replace('#gdlr#', $value, $option['selector']) . 
    Line 93: fwrite($file_stream, $style);
    Line 98: fwrite($file_stream, $end_of_file);
    Line 102: fwrite($file_stream, str_replace('\r\n', '\n', $theme_option['additional-st
    fwrite trouvé dans le fichier gdlr-admin-option.php.
    Line 57: fwrite( $file_stream, str_replace('#gdlr#', $value, $option['selector']) . 
    Line 93: fwrite($file_stream, $style);
    Line 98: fwrite($file_stream, $end_of_file);
    Line 102: fwrite($file_stream, str_replace('\r\n', '\n', $theme_option['additional-st
    fwrite trouvé dans le fichier gdlr-admin-option.php.
    Line 57: fwrite( $file_stream, str_replace('#gdlr#', $value, $option['selector']) . 
    Line 93: fwrite($file_stream, $style);
    Line 98: fwrite($file_stream, $end_of_file);
    Line 102: fwrite($file_stream, str_replace('\r\n', '\n', $theme_option['additional-st
    fclose trouvé dans le fichier gdlr-admin-option.php.
    Line 106: fclose($file_stream);
    file_get_contents trouvé dans le fichier goodlayers-importer.php.
    Line 37: $widget_data = unserialize(file_get_contents($widget_file));
    fopen trouvé dans le fichier goodlayers-importer.php.
    Line 68: //$file_stream = @fopen($widget_file, 'w');
    fwrite trouvé dans le fichier goodlayers-importer.php.
    Line 69: //fwrite($file_stream, serialize($widget_data));
    fclose trouvé dans le fichier goodlayers-importer.php.
    Line 70: //fclose($file_stream);	
    file_get_contents trouvé dans le fichier gdlr-paypal.php.
    Line 169: $raw_post_data = file_get_contents('php://input');
    file_get_contents trouvé dans le fichier twitteroauth.php.
    Line 278: file_get_contents(self::$POST_INPUT)
  6. Code malveillant : Opérations réseau curl_init trouvé dans le fichier gdlr-paypal.php.
    Line 193: $ch = curl_init($paypal_action);
    curl_exec trouvé dans le fichier gdlr-paypal.php.
    Line 203: if( !($res = curl_exec($ch)) ) {
    curl_init trouvé dans le fichier twitteroauth.php.
    Line 1069: $ci = curl_init();
    curl_exec trouvé dans le fichier twitteroauth.php.
    Line 1095: $response = curl_exec($ci);
  7. Menu Admin : Les thèmes doivent utiliser add_theme_page () pour ajouter des pages admin. Fichier gdlr-admin-panel.php :
    Line 47: $page = add_menu_page($this->setting['page_title'], $this->setting['menu_title'], 
    Fichier class-tgm-plugin-activation.php :
    Line 412: $this->page_hook = call_user_func( 'add_submenu_page', $args['parent_slug'], $args['page_title'], $args['menu_t
  8. Inclusion de plugin : Présence de fichier zip Les plugins ne sont pas autorisés dans les thèmes. Le fichier zip gdlr-conference.zip gdlr-portfolio.zip masterslider.zip goodlayers-importer.zip gdlr-shortcode.zip a été trouvé.
Attention
  1. tags du thème : Présence de tags inconnusLe 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 yellow est obsolète, il ne doit pas figurer dans le header de style.css.Le tag fluid-layout est obsolète, il ne doit pas figurer dans le header de style.css.
  2. 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 the-keynote.
  3. Text domain : Utilisation incorrecte des fonctions de traduction.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Begin installing plugin', 'Begin installing plugins' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Activate installed plugin', 'Activate installed plugins' dans le fichier gdlr-plugin-activation.php.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 gdlr_translate, thekeynote, tgmpa, gdlr-conference.
  4. Contextes de plugin : Fonctionnalités de pluginLe thème utilise la fonction register_taxonomy(). Cette fonction n'est pas prévue pour être utilisée dans le contexte d'un thème, mais plutôt dans un plugin.Le thème utilise la fonction add_shortcode(). L'utilisation des custom post-content shortcodes est du domaine des plugins.
  5. Eléments custom : Présence d'une entête customAucune référence à custom header n'a été trouvée dans le thème.
  6. Eléments custom : Présence d'un fond customAucune référence à custom background n'a été trouvée dans le thème.
  7. Image à la une ("Featured image") : Utilisation de the_post_thumbnail() instead of custom fields for thumbnailsAucune référence à the_post_thumbnail n'a été trouvée dans le thème.
  8. 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 twitteroauth.php.
    Line 1134: echo '<strong>'.$tweets->errors[0]->message.'!</strong><br />You\'ll need to regenerate it <a href='https://dev.twitter.com/apps' target='_blank'>here</a>!' . $after_widget;
  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 du fichier-template author.phpCe thème ne contient pas le fichier optionnel author.php.
  9. Fichiers optionnels : Présence de du fichier-template des dates et heures date.phpCe thème ne contient pas le fichier optionnel date.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 : gdlr-framework.php
    Line 10: include_once('function/gdlr-sidebar-generator.php');
    Line 13: include_once('function/gdlr-admin-panel.php');	
    Line 14: include_once('function/gdlr-admin-panel-html.php');	
    Line 17: include_once('function/gdlr-customizer.php');	
    Line 20: include_once('function/gdlr-page-builder.php');	
    Line 21: include_once('function/gdlr-page-builder-html.php');	
    Line 24: include_once('function/gdlr-page-options.php');	
    Line 27: include_once('function/gdlr-tax-meta.php');		
    Line 30: include_once('function/gdlr-include-script.php');	
    Line 33: include_once('function/gdlr-font-loader.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 : gdlr-plugin-activation.php
    Line 2: require_once(GDLR_LOCAL_PATH . '/include/plugin/class-tgm-plugin-activation
    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 : gdlr-paypal.php
    Line 22: 
    Line 25: 
    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.

Ceci est un thème distribué surThemeForest. Etant donné que tous les thèmes de Themeforest sont validés par un humain avant d'être mis en ligne, les règles de vérification de Themeforest sont plus permissives que celles de themecheck et peuvent donner un meilleur score de vérification ( Themeforest requirements ).

34
Alertes critiques
  1. Customizer : Sanitization des Customizer settings Un setting Customizer a été trouvé sans callback de sanitization dans le fichier gdlr-customizer.php. Tous les appels à la méthode add_setting() doivent déclarer une fonction de filtrage.
  2. Code malveillant : Opérations réseau curl_init trouvé dans le fichier gdlr-paypal.php.
    Line 193: $ch = curl_init($paypal_action);
    curl_exec trouvé dans le fichier gdlr-paypal.php.
    Line 203: if( !($res = curl_exec($ch)) ) {
    curl_init trouvé dans le fichier twitteroauth.php.
    Line 1069: $ci = curl_init();
    curl_exec trouvé dans le fichier twitteroauth.php.
    Line 1095: $response = curl_exec($ci);
  3. Inclusion de plugin : Présence de fichier zip Les plugins ne sont pas autorisés dans les thèmes. Le fichier zip gdlr-conference.zip gdlr-portfolio.zip masterslider.zip goodlayers-importer.zip gdlr-shortcode.zip a été trouvé.
Attention
  1. tags du thème : Présence de tags inconnusLe 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 yellow est obsolète, il ne doit pas figurer dans le header de style.css.Le tag fluid-layout est obsolète, il ne doit pas figurer dans le header de style.css.
  2. 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 the-keynote.
  3. Text domain : Utilisation incorrecte des fonctions de traduction.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Begin installing plugin', 'Begin installing plugins' dans le fichier gdlr-plugin-activation.php.Une fonction de traduction utilisée sans text-domain. Fonction _n_noop, avec les arguments 'Activate installed plugin', 'Activate installed plugins' dans le fichier gdlr-plugin-activation.php.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 gdlr_translate, thekeynote, tgmpa, gdlr-conference.
  4. Contextes de plugin : Fonctionnalités de pluginLe thème utilise la fonction register_taxonomy(). Cette fonction n'est pas prévue pour être utilisée dans le contexte d'un thème, mais plutôt dans un plugin.Le thème utilise la fonction add_shortcode(). L'utilisation des custom post-content shortcodes est du domaine des plugins.
  5. Image à la une ("Featured image") : Utilisation de the_post_thumbnail() instead of custom fields for thumbnailsAucune référence à the_post_thumbnail n'a été trouvée dans le thème.
  6. 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 twitteroauth.php.
    Line 1134: echo '<strong>'.$tweets->errors[0]->message.'!</strong><br />You\'ll need to regenerate it <a href='https://dev.twitter.com/apps' target='_blank'>here</a>!' . $after_widget;
  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 du fichier-template author.phpCe thème ne contient pas le fichier optionnel author.php.
  9. Fichiers optionnels : Présence de du fichier-template des dates et heures date.phpCe thème ne contient pas le fichier optionnel date.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 : gdlr-framework.php
    Line 10: include_once('function/gdlr-sidebar-generator.php');
    Line 13: include_once('function/gdlr-admin-panel.php');	
    Line 14: include_once('function/gdlr-admin-panel-html.php');	
    Line 17: include_once('function/gdlr-customizer.php');	
    Line 20: include_once('function/gdlr-page-builder.php');	
    Line 21: include_once('function/gdlr-page-builder-html.php');	
    Line 24: include_once('function/gdlr-page-options.php');	
    Line 27: include_once('function/gdlr-tax-meta.php');		
    Line 30: include_once('function/gdlr-include-script.php');	
    Line 33: include_once('function/gdlr-font-loader.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 : gdlr-plugin-activation.php
    Line 2: require_once(GDLR_LOCAL_PATH . '/include/plugin/class-tgm-plugin-activation
    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 : gdlr-paypal.php
    Line 22: 
    Line 25: 
    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.
Autre thèmes vérifiés