I tried the suggested code, but it only worked properly on child categories. Children displayed posts that were in their category only, rather than theirs plus the parent posts.
However, within parent categories, absolutely nothing displays.
The parent categories looked like they were showing nothing because they didn’t show the only post in the category. I put a second post in the parent category and with the above code it showed the second post, but still not the first post.
After doing some searching and testing I’ve found this code to do what I wanted in the beginning.
<?php if (have_posts()) : ?>
<?php $cat = intval( get_query_var('cat') );
$catpostquery = 'cat=' . $cat . '&posts_per_page=1&orderby=date&order=ASC'; ?>
<?php query_posts($catpostquery); ?>
<?php while (have_posts()) : the_post(); ?>
<?php if ( in_category($cat) ) { ?>
<?php the_content('Read the rest'); ?>
<?php } else { ?>
<?php endwhile; ?>
<?php else : ?>
<h2>Not Found</h2>
<?php endif; ?>
Basically by adding the query_posts function to only show one post and sort the order (before loop) then I get the one and only post in that parent category to show. This also works for the child categories. I’m not entirely sure why this works correctly, but I’ll take it.
If anyone knows better why the first and only post in a parent category wouldn’t show with the code I posted before this post, I’d like to know why. Also if there is a better solution, please share.