Downloads submenu, * regardless of which actual Downloads Taxonomy screen we are on. * * The conditional prevents the override when the user is viewing settings or * any third-party plugins. * * @since 3.0.0 * * @global string $submenu_file */ function edd_taxonomies_modify_menu_highlight() { global $submenu_file; // Bail if not viewing a taxonomy if ( empty( $_GET['taxonomy'] ) ) { return; } // Get taxonomies $taxonomy = sanitize_key( $_GET['taxonomy'] ); $taxonomies = get_object_taxonomies( 'download' ); // Bail if current taxonomy is not a download taxonomy if ( ! in_array( $taxonomy, $taxonomies, true ) ) { return; } // Force the submenu file $submenu_file = 'edit.php?post_type=download'; } add_filter( 'admin_head', 'edd_taxonomies_modify_menu_highlight', 9999 ); /** * This tells WordPress to highlight the Downloads > Downloads submenu when * adding a new product. * * @since 3.0.0 * * @global string $submenu_file */ function edd_add_new_modify_menu_highlight() { global $submenu_file, $pagenow; // Bail if not viewing the right page or post type if ( empty( $_GET['post_type'] ) || ( 'post-new.php' !== $pagenow ) ) { return; } // Get post_type $post_type = sanitize_key( $_GET['post_type'] ); // Bail if current post type is not download if ( 'download' !== $post_type ) { return; } // Force the submenu file $submenu_file = 'edit.php?post_type=download'; } add_filter( 'admin_head', 'edd_add_new_modify_menu_highlight', 9999 ); /** * Displays the product tabs for Products, Categories, and Tags * * @since 2.8.9 */ function edd_display_product_tabs() { // Initial tabs $tabs = array( 'products' => array( 'name' => edd_get_label_plural(), 'url' => edd_get_admin_url(), ), ); // Get taxonomies $taxonomies = get_object_taxonomies( 'download', 'objects' ); foreach ( $taxonomies as $tax => $details ) { $tabs[ $tax ] = array( 'name' => $details->labels->menu_name, 'url' => add_query_arg( array( 'taxonomy' => sanitize_key( $tax ), 'post_type' => 'download' ), admin_url( 'edit-tags.php' ) ) ); } // Filter the tabs $tabs = apply_filters( 'edd_add_ons_tabs', $tabs ); // Taxonomies if ( isset( $_GET['taxonomy'] ) && in_array( $_GET['taxonomy'], array_keys( $taxonomies ), true ) ) { $active_tab = $_GET['taxonomy']; // Default to Products } else { $active_tab = 'products'; } // Start a buffer ob_start(); ?>