0
Validation results

Genesis

Genesis

WordPress 4.9.6 theme
0
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.The <title> tags can only contain a call to wp_title(). Use the wp_title filter to modify the output.
  2. Malware : Operations on file system file_get_contents was found in the file import-export.php
    Ligne317: $upload = file_get_contents( $_FILES['genesis-import-upload']['tmp_name'] );
    file_get_contents was found in the file readme-menu.php
    Ligne64: $file = @file_get_contents( CHILD_DIR . '/README.txt' );
  3. Admin menu : Themes should use add_theme_page() for adding admin pages. File admin.php :
    Ligne171: $this->pagehook = add_menu_page( $menu['page_title'], $menu['menu_title'], $menu['capability'
    File admin.php :
    Ligne202: $this->pagehook = add_submenu_page( $this->page_id, $menu['page_title'], $menu['menu_title'],
    Ligne226: $this->pagehook = add_submenu_page( $menu['parent_slug'], $menu['page_title'], $menu['menu_ti
    File admin.php :
    Ligne202: $this->pagehook = add_submenu_page( $this->page_id, $menu['page_title'], $menu['menu_title'],
    Ligne226: $this->pagehook = add_submenu_page( $menu['parent_slug'], $menu['page_title'], $menu['menu_ti
  4. Inapropriate constants : Use of HEADER_IMAGE Constant HEADER_IMAGE was found in the file header.php. add_theme_support( 'custom-header' ) should be used instead.
    Ligne807: if ( HEADER_TEXTCOLOR == get_header_textcolor() && HEADER_IMAGE == get_header_image() )
  5. Inapropriate constants : Use of HEADER_TEXTCOLOR Constant HEADER_TEXTCOLOR was found in the file header.php. add_theme_support( 'custom-header' ) should be used instead.
    Ligne807: if ( HEADER_TEXTCOLOR == get_header_textcolor() && HEADER_IMAGE == get_header_im
  6. Inapropriate constants : Use of HEADER_IMAGE_HEIGHT Constant HEADER_IMAGE_HEIGHT was found in the file header.php. add_theme_support( 'custom-header' ) should be used instead.
    Ligne833: $headimg = sprintf( '.appearance_page_custom-header #headimg { background: url(%s) no-repeat; min-height: %spx; }', get_header_image(), HEADER_IMAGE_HEIGHT );
  7. Deprecated functions : screen_icon screen_icon found in file admin.php. Deprecated since version 3.8.
    Ligne103: 'screen_icon'       => 'options-general',
    Ligne410: <?php screen_icon( $this->page_ops['screen_icon'] ); ?>
    Ligne522: <?php screen_icon( $this->page_ops['screen_icon'] ); ?>
    screen_icon found in file import-export.php. Deprecated since version 3.8.
    Ligne74: <?php screen_icon( 'tools' ); ?>
    screen_icon found in file readme-menu.php. Deprecated since version 3.8.
    Ligne71: <?php screen_icon( 'edit-pages' ); ?>
Warning
  1. theme tags : Presence of bad theme tagsThe tag black has been deprecated, it must be removed from style.css header.The tag orange has been deprecated, it must be removed from style.css header.The tag white has been deprecated, it must be removed from style.css header.The tag fixed-width has been deprecated, it must be removed from style.css header.
  2. Text domain : Incorrect use of translation functions.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s year', '%s years', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s month', '%s months', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s week', '%s weeks', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s day', '%s days', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s hour', '%s hours', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s minute', '%s minutes', 'time difference' in file formatting.php.Found a translation function that is missing a text-domain. Function _nx_noop, with the arguments '%s second', '%s seconds', 'time difference' in file formatting.php.
  3. Plugin territory : Plugin territory functionalitiesThe theme uses the add_shortcode() function. Custom post-content shortcodes are plugin-territory functionality.
  4. Hidden admin bar : Hidden admin Bar in CSSThemes should not hide admin bar. Detected in file style.css.
  5. Custom elements : Presence of custom backgroundNo reference to custom background was found in the theme.
  6. Deprecated functions : screen_iconscreen_icon found in file admin.php. Deprecated since version 3.8.
    Ligne103: 'screen_icon'       => 'options-general',
    Ligne410: <?php screen_icon( $this->page_ops['screen_icon'] ); ?>
    Ligne522: <?php screen_icon( $this->page_ops['screen_icon'] ); ?>
    screen_icon found in file import-export.php. Deprecated since version 3.8.
    Ligne74: <?php screen_icon( 'tools' ); ?>
    screen_icon found in file readme-menu.php. Deprecated since version 3.8.
    Ligne71: <?php screen_icon( 'edit-pages' ); ?>
  7. Editor style : Presence of editor styleNo reference to add_editor_style() was found in the theme. It is recommended that the theme implements editor styling, so as to make the editor content match the resulting post output in the theme, for a better user experience.
  8. Featured image : Use of the_post_thumbnail() instead of custom fields for thumbnailsNo reference to the_post_thumbnail was found in the theme.
  9. CSS files : Presence of text domainText Domain: is missing from your style.css header.
  10. 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.
  11. Screenshot : Screenshot fileScreenshot size is 300x225px. Screenshot size should be 1200x900, to account for HiDPI displays. Any 4:3 image size is acceptable, but 1200x900 is preferred.Bad screenshot file extension ! File screenshot.png is not an actual JPG file. Detected type was : "image/png".
Tip-off
  1. Static links : Presence of hard-coded linksPossible hard-coded links were found in the file footer.php.
    Ligne12: * @link     http://www.studiopress.com/themes/genesis
    Ligne147: 'url'    => 'http://www.studiopress.com/themes/genesis',
    Ligne180: $output = $atts['before'] . '<a href='http://www.studiopress.com/'>StudioPress</a>' . $atts['after'];
    Possible hard-coded links were found in the file inpost-metaboxes.php.
    Ligne63: <p><label for='genesis_canonical'><b><?php _e( 'Custom Canonical URI', 'genesis' ); ?></b> <a href='http://www.mattcutts.com/blog/canonical-link-tag/' target='_blank' title='&
    Ligne75: <label for='genesis_noindex'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noindex</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne78: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>nofollow</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne81: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noarchive</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne75: <label for='genesis_noindex'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noindex</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne78: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>nofollow</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne81: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noarchive</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne75: <label for='genesis_noindex'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noindex</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne78: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>nofollow</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Ligne81: <label for='genesis_nofollow'><?php printf( __( 'Apply %s to this post/page', 'genesis' ), '<code>noarchive</code>' ); ?> <a href='http://yoast.com/articles/robots-meta-tags/' target='_blank'>[?]</a></label
    Possible hard-coded links were found in the file whats-new.php.
    Ligne107: <a href='http://twitter.com/nathanrice'><img src='http://0.gravatar.com/avatar/fdbd4
    Ligne108: <a class='web' href='http://twitter.com/nathanrice'>Nathan Rice</a>
    Ligne112: <a href='http://twitter.com/sillygrampy'><img src='http://0.gravatar.com/avatar/7b8f
    Ligne113: <a class='web' href='http://twitter.com/sillygrampy'>Ron Rennick</a>
    Ligne117: <a href='http://twitter.com/bgardner'><img src='http://0.gravatar.com/avatar/c845c86
    Ligne118: <a class='web' href='http://twitter.com/bgardner'>Brian Gardner</a>
    Ligne131: <a href='http://twitter.com/jaredatch'><img src='http://0.gravatar.com/avatar/e341ec
    Ligne132: <a class='web' href='http://twitter.com/jaredatch'>Jared Atchison</a>
    Ligne136: <a href='http://twitter.com/tweetsfromchris'><img src='http://0.gravatar.com/avatar/
    Ligne137: <a class='web' href='http://twitter.com/tweetsfromchris'>Chris Cochran</a>
    Ligne141: <a href='http://twitter.com/nick_thegeek'><img src='http://0.gravatar.com/avatar/324
    Ligne142: <a class='web' href='http://twitter.com/nick_thegeek'>Nick Croft</a>
    Ligne146: <a href='http://twitter.com/deckerweb'><img src='http://0.gravatar.com/avatar/28d02f
    Ligne147: <a class='web' href='http://twitter.com/deckerweb'>David Decker</a>
    Ligne151: <a href='http://twitter.com/billerickson'><img src='http://0.gravatar.com/avatar/ae5
    Ligne152: <a class='web' href='http://twitter.com/billerickson'>Bill Erickson</a>
    Ligne156: <a href='http://twitter.com/jthomasgriffin'><img src='http://0.gravatar.com/avatar/f
    Ligne157: <a class='web' href='http://twitter.com/jthomasgriffin'>Thomas Griffin</a>
    Ligne161: <a href='http://twitter.com/garyj'><img src='http://0.gravatar.com/avatar/e70d4086e8
    Ligne162: <a class='web' href='http://twitter.com/garyj'>Gary Jones</a>
    Ligne166: <a href='http://twitter.com/norcross'><img src='http://0.gravatar.com/avatar/26ab8f9
    Ligne167: <a class='web' href='http://twitter.com/norcross'>Andrew Norcross</a>
    Ligne171: <a href='http://twitter.com/rafaltomal'><img src='http://0.gravatar.com/avatar/c9f7b
    Ligne172: <a class='web' href='http://twitter.com/rafaltomal'>Rafal Tomal</a>
    Ligne176: <a href='http://twitter.com/wp_smith'><img src='http://0.gravatar.com/avatar/7e673cd
    Ligne177: <a class='web' href='http://twitter.com/wp_smith'>Travis Smith</a>
    Possible hard-coded links were found in the file formatting.php.
    Ligne193: $text = preg_replace( '/@(\w+)/', '<a href='http://www.twitter.com/\\1' target='_blank'>@\\1</a>', $text );
    Ligne194: $text = preg_replace( '/#(\w+)/', '<a href='http://search.twitter.com/search?q=\\1' target='_blank'>#\\1</a>', $text );
  2. Optional files : Presence of rtl stylesheet rtl.cssThis theme does not contain optional file rtl.php.
  3. Optional files : Presence of front page template file front-page.phpThis theme does not contain optional file front-page.php.
  4. Optional files : Presence of home template file home.phpThis theme does not contain optional file home.php.
  5. Optional files : Presence of category template file category.phpThis theme does not contain optional file category.php.
  6. Optional files : Presence of tag template file tag.phpThis theme does not contain optional file tag.php.
  7. Optional files : Presence of term template file taxonomy.phpThis theme does not contain optional file taxonomy.php.
  8. Optional files : Presence of author template file author.phpThis theme does not contain optional file author.php.
  9. Optional files : Presence of date/time template file date.phpThis theme does not contain optional file date.php.
  10. Optional files : Presence of attachment template file attachment.phpThis theme does not contain optional file attachment.php.
  11. Use of includes : Use of include or requireThe theme appears to use include or require : init.php
    Ligne151: require_once( GENESIS_LIB_DIR . '/framework.php' );
    Ligne154: require_once( GENESIS_CLASSES_DIR . '/admin.php' );
    Ligne156: require_once( GENESIS_CLASSES_DIR . '/sanitization.php' );
    Ligne159: require_once( GENESIS_FUNCTIONS_DIR . '/upgrade.php' );
    Ligne160: require_once( GENESIS_FUNCTIONS_DIR . '/general.php' );
    Ligne161: require_once( GENESIS_FUNCTIONS_DIR . '/options.php' );
    Ligne162: require_once( GENESIS_FUNCTIONS_DIR . '/image.php' );
    Ligne163: require_once( GENESIS_FUNCTIONS_DIR . '/menu.php' );
    Ligne164: require_once( GENESIS_FUNCTIONS_DIR . '/layout.php' );
    Ligne165: require_once( GENESIS_FUNCTIONS_DIR . '/formatting.php' );
    Ligne166: require_once( GENESIS_FUNCTIONS_DIR . '/seo.php' );
    Ligne167: require_once( GENESIS_FUNCTIONS_DIR . '/widgetize.php' );
    Ligne168: require_once( GENESIS_FUNCTIONS_DIR . '/feed.php' );
    Ligne169: require_once( GENESIS_FUNCTIONS_DIR . '/deprecated.php' );
    Ligne172: require_once( GENESIS_SHORTCODES_DIR . '/post.php' );
    Ligne173: require_once( GENESIS_SHORTCODES_DIR . '/footer.php' );
    Ligne176: require_once( GENESIS_STRUCTURE_DIR . '/header.php' );
    Ligne177: require_once( GENESIS_STRUCTURE_DIR . '/footer.php' );
    Ligne178: require_once( GENESIS_STRUCTURE_DIR . '/menu.php' );
    Ligne179: require_once( GENESIS_STRUCTURE_DIR . '/layout.php' );
    Ligne180: require_once( GENESIS_STRUCTURE_DIR . '/post.php' );
    Ligne181: require_once( GENESIS_STRUCTURE_DIR . '/loops.php' );
    Ligne182: require_once( GENESIS_STRUCTURE_DIR . '/comments.php' );
    Ligne183: require_once( GENESIS_STRUCTURE_DIR . '/sidebar.php' );
    Ligne184: require_once( GENESIS_STRUCTURE_DIR . '/archive.php' );
    Ligne185: require_once( GENESIS_STRUCTURE_DIR . '/search.php' );
    Ligne189: require_once( GENESIS_ADMIN_DIR . '/editor.php' );
    Ligne190: require_once( GENESIS_ADMIN_DIR . '/menu.php' );
    Ligne191: require_once( GENESIS_ADMIN_DIR . '/theme-settings.php' );
    Ligne192: require_once( GENESIS_ADMIN_DIR . '/seo-settings.php' );
    Ligne193: require_once( GENESIS_ADMIN_DIR . '/import-export.php' );
    Ligne194: require_once( GENESIS_ADMIN_DIR . '/readme-menu.php' );
    Ligne195: require_once( GENESIS_ADMIN_DIR . '/inpost-metaboxes.php' );
    Ligne196: require_once( GENESIS_ADMIN_DIR . '/whats-new.php' );
    Ligne198: require_once( GENESIS_ADMIN_DIR . '/term-meta.php' );
    Ligne199: require_once( GENESIS_ADMIN_DIR . '/user-meta.php' );
    Ligne202: require_once( GENESIS_JS_DIR . '/load-scripts.php' );
    Ligne205: require_once( GENESIS_CSS_DIR . '/load-styles.php' );
    Ligne208: require_once( GENESIS_WIDGETS_DIR . '/widgets.php' );
    Ligne211: require_once( GENESIS_TOOLS_DIR . '/custom-field-redirect.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
    Ligne14: require_once( GENESIS_WIDGETS_DIR . '/user-profile-widget.php' );
    Ligne15: require_once( GENESIS_WIDGETS_DIR . '/enews-widget.php' );
    Ligne16: require_once( GENESIS_WIDGETS_DIR . '/featured-post-widget.php' );
    Ligne17: require_once( GENESIS_WIDGETS_DIR . '/featured-page-widget.php' );
    Ligne18: require_once( GENESIS_WIDGETS_DIR . '/latest-tweets-widget.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