I did some debugging, and changing get_sticky_query to the following seems to cause it to work properly – how tax_query was changed seems to have changed a little. This will search for posts with the requested category, that also are marked category sticky.
private function get_sticky_query( $category ) {
return new WP_Query(
array(
‘fields’ => ‘ids’,
‘post_type’ => ‘post’,
‘posts_per_page’ => ‘1’,
‘tax_query’ => array(
array(
‘taxonomy’ => ‘category’,
‘field’ => ‘term_id’, ‘terms’ => array($category->cat_ID),
),
),
‘meta_query’ => array(
array(
‘key’ => ‘category_sticky_post’,
‘value’ => $category->cat_ID,
)
)
)
);
}