It seems that the following code is at fault:
$query_args['tax_query'] = array(
array(
'taxonomy' => 'edd_log_type',
'field' => 'slug',
'terms' => 'file_download',
)
);
It seems to be combining the tax_query args with those from the search query itself, by removing this I am getting a better result, although it is counting ALL logs, not just those with the ‘file_download’ id.
For me it works as downloads are in the hundreds/thousands and some posts maybe have 3-5 other logs that get counted too.
A half fix, but functional for now unless anyone can figure out a way of getting the query to recognise a separate set of tax args?
Thanks guys! 🙂