In a plugin, I have this simple code:

    add_filter( 'the_posts', 'process_search_results', 10, 2 );
    function process_search_results($posts, $query=false) {
        print_r($posts);
        return $posts;
    }

This shows the list of posts that will be looped over in the loop. But on a search page, an empty array (`Array()`) is printed, while the search results are still shown. Why is `$posts` empty for searches?

Some background: I'll try to code a custom search plugin that should merge results from an external data source into the default results.