Taxonomy based permalinks

Try something like this:

function custom_rewrite( $wp_rewrite ) {

    $feed_rules = array(
        '(.+)/blog/(.+)'      =>  'index.php?custom_tax='.$wp_rewrite->preg_index(1).'&post_name=" . $wp_rewrite->preg_index(2)
    );

    // ( array merge must be done this way, to ensure new rule comes first )
    $wp_rewrite->rules = $feed_rules + $wp_rewrite->rules;
}
// refresh/flush permalinks in the dashboard if this is changed in any way
add_filter( "generate_rewrite_rules', 'custom_rewrite' );

Remember to flush permalinks by visiting the permalinks page and re-saving if you add/change this code. Also remove the flush_rewrite_rules(); as advised by Stephen, it’s unnecessary and bad practice.

Leave a Comment