Customizing URL slugs of Custom Post Type and Taxonomy make posts/pages 404

This one has tripped me up in the past. If you have a collision between a taxonomy and post type rewrite, it’s important that you register the taxonomy before the post type.

Assuming you’d be ok with reworking your reviews URLs to the format /reviews/%niche%/%postname%, you’d need to change your post type as follows:

'rewrite' => array( 'slug' => 'reviews/%niche%', 'with_front' => false ),
'has_archive' => 'reviews',

your taxonomy:

'rewrite' => array( 'slug' => 'reviews', 'with_front' => false ),

and as mentioned above, do your call to register_taxonomy() before your call to register_post_type(). Visit Settings > Permalinks and resave to flush your rewrite rules.