Can you try this PHP snippet instead?
add_filter('request', function( array $query_vars ) {
if ( is_admin() ) {
return $query_vars;
}
if (! is_single()){
if ( isset( $query_vars['category_name'] ) ) {
$pagename = $query_vars['category_name'];
$query_vars == array( 'pagename' => "$pagename" );
}
return $query_vars;
}
return $query_vars;
} );