0
Résultats de validation

university

university

WordPress 6.5.2 theme
0
  • TYPE DE THèMEThème WordPress %s 6.5.2
  • NOM DU FICHIERuniversity-2.1.3.9.zip
  • TAILLE DU FICHIER21007847 octets
  • MD5c336439c0497b018a9238c56d9d05b7b
  • SHA1d74e77aa7933d97707ecfb185d2dcedc8b83bc15
  • LICENCEAucun
  • FICHIERS INCLUSCSS, PHP, XML, Bitmap images, Adobe Illustrator
  • URI DU THèME URIhttp://cactusthemes.com/
  • VERSION2.1.3.9
  • DATE DE CRéATION2019-11-06
  • DERNIèRE MISE à JOUR DU FICHIER2019-11-06
  • DERNIèRE VALIDATION2019-11-06 07:34
Ce thème n'est peut être pas libre. Themecheck ne distribue pas de thèmes commerciaux.
Alertes critiques
  1. Title : Title Absence de référence à add_theme_support( "title-tag" ) dans le thème.Le thème doit avoir des tags <title>, idéalement dans le fichier header.php.Le thème doit comporter un appel à wp_title(), idéalement dans le fichier header.php.
  2. Failles de sécurité : Utilisation de base64_decode() base64_decode trouvé dans le fichier ot-functions-admin.php. 5054: $decoded = base64_decode( $value ); // phpcs:ignorebase64_decode trouvé dans le fichier cactus_importer.php. 72: $data = unserialize( base64_decode( $theme_options_txt['body']) );
  3. Failles de sécurité : Utilisation de base64_encode() base64_encode trouvé dans le fichier ot-functions-admin.php.
     return base64_encode( maybe_serialize( $value ) ); // phpcs:ignore
  4. Code malveillant : Opérations sur système de fichiers fopen trouvé dans le fichier ot-functions-admin.php. 3700: $f = @fopen( $filepath, 'w' ); // phpcs:ignore3793: $f = @fopen( $filepath, 'w' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefclose trouvé dans le fichier ot-functions-admin.php. 3755: fclose( $f ); // phpcs:ignore3837: fclose( $f ); // phpcs:ignorefopen trouvé dans le fichier ot-functions-admin.php. 3700: $f = @fopen( $filepath, 'w' ); // phpcs:ignore3793: $f = @fopen( $filepath, 'w' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefwrite trouvé dans le fichier ot-functions-admin.php. 3730: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3732: fwrite( $f, '{$markerline}' ); // phpcs:ignore3738: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3739: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3740: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3749: fwrite( $f, '/* BEGIN {$marker} */\n' ); // phpcs:ignore3750: fwrite( $f, '{$insertion}\n' ); // phpcs:ignore3751: fwrite( $f, '/* END {$marker} */\n' ); // phpcs:ignore3822: fwrite( $f, '{$markerline}\n' ); // phpcs:ignore3824: fwrite( $f, '{$markerline}' ); // phpcs:ignore3830: fwrite( $f, '' ); // phpcs:ignorefclose trouvé dans le fichier ot-functions-admin.php. 3755: fclose( $f ); // phpcs:ignore3837: fclose( $f ); // phpcs:ignorefile_get_contents trouvé dans le fichier functions.php. 749: $json = file_get_contents($apifql);file_get_contents trouvé dans le fichier cactus_importer.php. 388: $import = explode('\n',file_get_contents(dirname(__FILE__) . '/widget_logic_options.txt', false));
  5. Menu Admin : Les thèmes doivent utiliser add_theme_page () pour ajouter des pages admin. Fichier class-tgm-plugin-activation.php : 734: $this->page_hook = call_user_func( 'add_submenu_page', $args['parent_slug'], $args['page_title'], $args['menu_t
  6. Inclusion de plugin : Présence de fichier zip Les plugins ne sont pas autorisés dans les thèmes. Le fichier zip university-sampledata.zip revslider.zip u-projects.zip u-shortcodes.zip u-course.zip u-member.zip js_composer.zip u-event.zip a été trouvé.
Attention
  1. tags du thème : Présence de tags inconnusTag inconnu trouvé dans l'entête du fichier style.css.
  2. Text domain : Utilisation incorrecte des fonctions de traduction.Une fonction de traduction utilisée sans text-domain. Fonction __, avec les arguments 'woocommerce' dans le fichier review.php.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.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 skeleton-core.php.Une fonction de traduction utilisée sans text-domain. Fonction __, avec les arguments 'Thumbnail' dans le fichier functions-admin.php.Une fonction de traduction utilisée sans text-domain. Fonction _e, avec les arguments 'cactusthemes' dans le fichier single-course-meta.php.Une fonction de traduction utilisée sans text-domain. Fonction _e, avec les arguments 'cactusthemes' dans le fichier single-course-meta.php.Une fonction de traduction utilisée sans text-domain. Fonction _e, avec les arguments 'cactusthemes' dans le fichier single-course-detail.php.Une fonction de traduction utilisée sans text-domain. Fonction _e, avec les arguments 'cactusthemes' dans le fichier single-event-detail.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 cactusthemes, woocommerce, theme-text-domain, option-tree-theme, option-tree, cactustheme, tgmpa, cactusthemes2, widget-logic, cactus, bbpress.
  3. Contextes de plugin : Fonctionnalités de pluginLe thème utilise la fonction register_post_type(). 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.
  4. Fichiers indésirables : fichiers ou dossiers cachés.ds_store a été trouvé.
  5. Implémentation de l'internationalisation : Utilisation correcte de _e(La variable $u_label_bro a été trouvée dans une fonction de traduction dans le fichier single-course-meta.php . Les appels de fonctions de traduction ne doivent pas contenir de variables PHP. La variable $u_label a été trouvée dans une fonction de traduction dans le fichier single-course-meta.php . Les appels de fonctions de traduction ne doivent pas contenir de variables PHP. La variable $u_textsub a été trouvée dans une fonction de traduction dans le fichier single-course-detail.php . Les appels de fonctions de traduction ne doivent pas contenir de variables PHP. La variable $u_textsub a été trouvée dans une fonction de traduction dans le fichier single-event-detail.php . Les appels de fonctions de traduction ne doivent pas contenir de variables PHP.
  6. Fichiers CSS : Présence du type de licenseLa déclaration License: manque dans le header du fichier style.css.
  7. Fichiers CSS : Présence de l'url de la licenseLa déclaration License URI: manque dans le header du fichier style.css.
  8. Fichiers CSS : Présence de text domainLa déclaration Text Domain: manque dans le header du fichier style.css.
  9. Fichiers CSS : Présence de la classe .screen-reader-textLa class css .screen-reader-text est nécessaire dans le css du thème. Voir : le Codex pour un exemple d'implémentation.
  10. Implémentation de la date et de l'heure : Utilisation de the_time()Au moins une date codée en dur a été trouvée dans le fichier loop-item-thumbnail.php. Il est préférable d'utiliser la fonction get_option( 'date_format' )à la place.
  11. Screenshot : Copie d'écranLa taille du screenshot est 600x450px. 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. 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.
  2. Fichiers optionnels : Présence du fichier-template de page d'accueil home.phpCe thème ne contient pas le fichier optionnel home.php.
  3. Fichiers optionnels : Présence du fichier-template de catégorie category.phpCe thème ne contient pas le fichier optionnel category.php.
  4. Fichiers optionnels : Présence du fichier-template des tags tag.phpCe thème ne contient pas le fichier optionnel tag.php.
  5. Fichiers optionnels : Présence du fichier template de taxinomie taxonomy.phpCe thème ne contient pas le fichier optionnel taxonomy.php.
  6. Fichiers optionnels : Présence du fichier-template author.phpCe thème ne contient pas le fichier optionnel author.php.
  7. Fichiers optionnels : Présence de du fichier-template des dates et heures date.phpCe thème ne contient pas le fichier optionnel date.php.
  8. Fichiers optionnels : Présence du fichier-template des archives archive.phpCe thème ne contient pas le fichier optionnel archive.php.
  9. Fichiers optionnels : Présence du fichier-template des images image.phpCe thème ne contient pas le fichier optionnel image.php.
  10. Utilisation d'includes : Utilisation de include ou de de requireLe thème semble utiliser include ou require : member-course.php 313: include_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 : demo-functions.php 65: # require( trailingslashit( get_template_directory() ) . 'option-tree/ot-load70: # require( trailingslashit( get_template_directory() ) . 'admin/theme-options 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 : ot-functions-docs-page.php 874: require( trailingslashit( get_template_directory() ) . \'includes/meta-boxe970: require( trailingslashit( get_template_directory() ) . \'option-tree/ot-loa999: require( trailingslashit( get_template_directory() ) . \'includes/theme-opt 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 : custom.css.php 5: //require '../../../../wp-load.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 : widgets.php 6: include('widgets/divider.php');7: include('widgets/latest-post-type.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 : skeleton-core.php 10: require_once 'utility-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 : meta-boxes.php 3: require_once 'page-metadata.php';4: require_once 'post-metadata.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