I'm trying to combine two types of content in a category archive, essentially injecting a second stream of content into the archive, but I can't get pagination to work. Say I have 15 posts, and 10 of a second type (lets call it 'stream'). If posts_per_page is set to 20, it will show the first 20 combined, but the second page doesn't exist and I get a 404. I know the obvious way to do this is using the pre_get_posts hook, and modifying the query before it gets run. Problem is the second type of content is a custom table (not my idea, helping a coworker) and it would be a ton of work to update it to a post type.
I've already worked through all the filters and actions that are called on the category archive, and nothing makes subsequent pages show. Using the found_posts filter, I've returned the combined count if on a category archive, but that doesn't work. If I set found_posts in pre_get_posts, I can see by printing $wp_query that max_num_pages gets updated to the correct value, but I still get a 404.