If you have problems getting data from another blog, polyfixes like temporarily registering taxonomies, etc. are a real pita in the long term.

You can't really rely on that workarounds, since such workarounds mimic internal wp infrastructure that changes over time.

**Best practice imho** would be to register a rest api endpoint (https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/) or an xmlrpc endpoint (https://codex.wordpress.org/XML-RPC_Extending). The endpoint fetches all data you need and returns it as json. So you always have a clean local context of the blog queried and don't have to struggle with missing infrastructure.

Would be something like this in the source blog:

    add_action( 
    	'rest_api_init', 
    	function () {
    		register_rest_route('your-namespace', '/get-terms/(?P<taxonomy>\d+)', array(
        		'methods' => 'GET',
        		'callback' => function($data) {
    				$taxonomy_slug = $data['taxonomy'];
    				return get_terms($taxonomy_slug, array('hide_empty' => false));
    			},
    		);
    	}
    );

And something like that in the requesting blog:


    $api_request = 'http://the.domain.of.your.blog/wp-json/your-namespace/get-terms/slug-of-taxonomy';
    $api_response = wp_remote_get($api_request);
    $taxonomy_terms = json_decode(wp_remote_retrieve_body($api_response), true);


Hope, that helps and best regards from Salzburg!