Change settings of get_post_type_object

I’ve a theme with a plugin provided by theme developer for manage portfolios section.
This plugin create a custom post type with this code:

// Portfolio post type
register_post_type('wyde_portfolio',
    array(
        'labels' => array(
            'name'          => __( 'Portfolios', 'Wyde' ),
            'singular_name' => __( 'Portfolio', 'Wyde' ),
            'add_new'       => __('Add New', 'Wyde' ),
            'add_new_item'  => __('Add New Portfolio', 'Wyde'),
            'edit_item'     => __('Edit Portfolio', 'Wyde'),
            'new_item'      => __('New Portfolio', 'Wyde'),
            'view_item'     => __('View Portfolios', 'Wyde'),
            'menu_name'     => __('Portfolios', 'Wyde')
        ),
        'public'      => true,
        'has_archive' => false,
        'rewrite'     => array(
            'slug'    => sanitize_title( $portfolio_slug ),
        ),
        'supports'   => array( 'title', 'editor', 'thumbnail'),
        'can_export' => true,
        'menu_icon'  => 'dashicons-portfolio'
    )
);

I’d like to add the option with_front => false in rewrite, in order to put all the permalink in the root of my site. So I had to change the rewrite with:

'rewrite' => array(
    'slug' => sanitize_title( $portfolio_slug ),
    with_front => false,
),

I don’t want to change the plugin file cause I will loose the change at every updates.
Is it possible to add that option later, for example in function.php of my child theme?

Reading the register_post_type documentation it seems that is possible modify the post type (A function for creating or modifying a post type).
I’ve tried to simply add this to my function.php:

register_post_type('wyde_portfolio',
    array(
        'rewrite' => array(
            'slug' => sanitize_title( $portfolio_slug ),
            with_front => false,
        ),
    )
);

but it doesn’t work.

I’ve tried also to redeclare all the params in register_post_type but it still doesn’t work.

I’ve tried also with:

$no = get_post_type_object('wyde_portfolio');
$no -> rewrite['with_front'] = false;
register_post_type('wyde_portfolio', $no ); 

Do you have any suggestion on how I can solve it?

Solutions Collecting From Web of "Change settings of get_post_type_object"

since WP 4.4.0, you can use this filter that allows you to change the arguments used in the original cpt registration.

Add this to your functions.php file:

add_filter( 'register_post_type_args', function( $args, $post_type ) {
    if( 'wyde_portfolio' === $post_type && is_array( $args ) )
        $args['rewrite']['with_front'] = false;

    return $args;
}, 99, 2 );

It’s taken from a recent answer, https://wordpress.stackexchange.com/a/224376/39150

Hope it helps!