Put sticky posts first in results in Relevanssi

Put sticky posts first in results in Relevanssi on child sites.

Snippet Type

Execute on Child Sites

Snippet

add_filter( 'relevanssi_hits_filter', 'rlv_sticky_first' );
function rlv_sticky_first( $hits ) {
	$sticky          = array();
	$nonsticky       = array();
	$sticky_post_ids = get_option( 'sticky_posts' );
	foreach( $hits[0] as $hit ) {
		if ( in_array( $hit->ID, $sticky_post_ids ) ) {
			$sticky[] = $hit;
		} else {
			$nonsticky[] = $hit;
		}
	}
	$hits[0] = array_merge( $sticky, $nonsticky );
	return $hits;
}

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.