I think I figured it out. The category that is fed correctly is a public category. For example the For sale items are private and that's why they are not getting fed. If I remove this from external.php will it work?
if ( $catcache[$thiscat] == "" )
$catcache[$thiscat] = is_image_private( $data['cat'] );