0
Validation results

university

university

WordPress 6.7 theme
0
  • THEME TYPEWordPress theme 6.7
  • FILE NAMEuniversity-2.1.3.9.zip
  • FILE SIZE21007847 bytes
  • MD5c336439c0497b018a9238c56d9d05b7b
  • SHA1d74e77aa7933d97707ecfb185d2dcedc8b83bc15
  • LICENSENone
  • FILES INCLUDEDCSS, PHP, XML, Bitmap images, Adobe Illustrator
  • THEME URIhttp://cactusthemes.com/
  • VERSION2.1.3.9
  • CREATION DATE2019-11-06
  • LAST FILE UPDATE2019-11-06
  • LAST VALIDATION2019-11-06 07:34
This theme seems to be proprietary. Themecheck doesn't distribute commercial themes.
Critical alerts
  1. Title : Title No reference to add_theme_support( "title-tag" ) was found in the theme.The theme needs to have <title> tags, ideally in the header.php file.The theme needs to have a call to wp_title(), ideally in the header.php file.
  2. Security breaches : Use of base64_decode() Found base64_decode in file ot-functions-admin.php. 5054: $decoded = base64_decode( $value ); // phpcs:ignoreFound base64_decode in file cactus_importer.php. 72: $data = unserialize( base64_decode( $theme_options_txt['body']) );
  3. Security breaches : Use of base64_encode() Found base64_encode in file ot-functions-admin.php.
     return base64_encode( maybe_serialize( $value ) ); // phpcs:ignore
  4. Malware : Operations on file system fopen was found in the file ot-functions-admin.php 3700: $f = @fopen( $filepath, 'w' ); // phpcs:ignore3793: $f = @fopen( $filepath, 'w' ); // phpcs:ignorefwrite was found in the file 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 was found in the file 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 was found in the file 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 was found in the file 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 was found in the file 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 was found in the file 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 was found in the file 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 was found in the file 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 was found in the file ot-functions-admin.php 3755: fclose( $f ); // phpcs:ignore3837: fclose( $f ); // phpcs:ignorefopen was found in the file ot-functions-admin.php 3700: $f = @fopen( $filepath, 'w' ); // phpcs:ignore3793: $f = @fopen( $filepath, 'w' ); // phpcs:ignorefwrite was found in the file 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 was found in the file 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 was found in the file 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 was found in the file ot-functions-admin.php 3755: fclose( $f ); // phpcs:ignore3837: fclose( $f ); // phpcs:ignorefile_get_contents was found in the file functions.php 749: $json = file_get_contents($apifql);file_get_contents was found in the file cactus_importer.php 388: $import = explode('\n',file_get_contents(dirname(__FILE__) . '/widget_logic_options.txt', false));
  5. Admin menu : Themes should use add_theme_page() for adding admin pages. File 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. Included plugins : Zip file found Plugins are not allowed in themes. The zip file found was university-sampledata.zip revslider.zip u-projects.zip u-shortcodes.zip u-course.zip u-member.zip js_composer.zip u-event.zip.
Warning
  1. theme tags : Presence of bad theme tagsFound wrong tag in style.css header.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function __, with the arguments 'woocommerce' in file review.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Begin installing plugin', 'Begin installing plugins' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function _n_noop, with the arguments 'Activate installed plugin', 'Activate installed plugins' in file skeleton-core.php.Found a translation function that is missing a text-domain. Function __, with the arguments 'Thumbnail' in file functions-admin.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'cactusthemes' in file single-course-meta.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'cactusthemes' in file single-course-meta.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'cactusthemes' in file single-course-detail.php.Found a translation function that is missing a text-domain. Function _e, with the arguments 'cactusthemes' in file single-event-detail.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 cactusthemes, woocommerce, theme-text-domain, option-tree-theme, option-tree, cactustheme, tgmpa, cactusthemes2, widget-logic, cactus, bbpress.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the register_post_type() function, which is plugin-territory functionality.The theme uses the add_shortcode() function. Custom post-content shortcodes are plugin-territory functionality.
  4. Unwanted files : hidden file(s) or folder(s).ds_store was found.
  5. I18N implementation : Proper use of _e(Possible variable $u_label_bro found in translation function in single-course-meta.php. Translation function calls should not contain PHP variables. Possible variable $u_label found in translation function in single-course-meta.php. Translation function calls should not contain PHP variables. Possible variable $u_textsub found in translation function in single-course-detail.php. Translation function calls should not contain PHP variables. Possible variable $u_textsub found in translation function in single-event-detail.php. Translation function calls should not contain PHP variables.
  6. CSS files : Presence of license typeLicense: is missing from style.css header.
  7. CSS files : Presence of license urlLicense URI: is missing from style.css header.
  8. CSS files : Presence of text domainText Domain: is missing from your style.css header.
  9. CSS files : Presence of .screen-reader-text class.screen-reader-text css class is needed in your theme css. See : the Codex for an example implementation.
  10. Date and time implementation : Use of the_time()At least one hard coded date was found in the file loop-item-thumbnail.php. Function get_option( 'date_format' ) should be used instead.
  11. Screenshot : Screenshot fileScreenshot size is 600x450px. 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. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  2. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  3. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.php.
  4. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  5. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  6. Optional files : Presence of author template file author.phpThis theme does not contain optional file author.php.
  7. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  8. Optional files : Presence of archive template file archive.phpThis theme does not contain optional file archive.php.
  9. Optional files : Presence of image template file image.phpThis theme does not contain optional file image.php.
  10. Use of includes : Use of include or requireThe theme appears to use include or require : member-course.php 313: include_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 : demo-functions.php 65: # require( trailingslashit( get_template_directory() ) . 'option-tree/ot-load70: # require( trailingslashit( get_template_directory() ) . 'admin/theme-options 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 : 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 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 : custom.css.php 5: //require '../../../../wp-load.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 : widgets.php 6: include('widgets/divider.php');7: include('widgets/latest-post-type.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 : skeleton-core.php 10: require_once 'utility-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 : meta-boxes.php 3: require_once 'page-metadata.php';4: require_once 'post-metadata.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