asp_results

Let's you access the results array before sending it to the templating system.

Let's you access and modify the results array before sending it to the templating system or the results page.

apply_filters('asp_results', array $results, int $search_id, bool $is_ajax, array $args);

Parameters

  • $results (array) - Array containing the result objects.

  • $search_id (int) - Search instance ID

  • $is_ajax (bool) - Is the current request an ajax search

  • $args (array) - Search arguments

Usage

add_filter( 'asp_results', 'asp_custom_link_results', 10, 1 );
function asp_custom_link_results( $results ) {
$link = 'https://www.google.com/'; // Link to use, when not logged in
// Parse through each result item
foreach ($results as $k=>&$r) {
/**
* $r (stdClass object) {
* 'id' -> Post or other result object (taxonomy term, user etc..) ID,
* 'title' -> Result title
* 'content' -> Result content
* 'post_type' -> Result post type (if available)
* 'content_type' -> Content type (pagepost, user, term, attachment etc..)
* }
**/
if ( !is_user_logged_in() )
$r->link = $link;
}
return $results;
}