show current item in custom menu, when inside a custom post type

Put this in your functions.php:

function additional_active_item_classes($classes = array(), $menu_item = false){
    global $wp_query;

    if(in_array('current-menu-item', $menu_item->classes)){
        $classes[] = 'current-menu-item';
    }

    if ( $menu_item->post_name == 'product' && is_post_type_archive('product') ) {
        $classes[] = 'current-menu-item';
    }

    if ( $menu_item->post_name == 'product' && is_singular('product') ) {
        $classes[] = 'current-menu-item';
    }


    return $classes;
}
add_filter( 'nav_menu_css_class', 'additional_active_item_classes', 10, 2 );

This code check if you are on a page product archive or an single product and if so it adds the class current-menu-item