Search only in the same category as the current post or page (single page)

There is no back-end option for this feature, but can be easily achieved by a small custom code. A similar code for archive pages can be found here.

What is this, and where do I put this custom code?

add_filter( 'asp_query_args', 'asp_posts_from_same_cat', 10, 2 );
function asp_posts_from_same_cat($args, $search_id) {
$taxonomy = 'category'; // Enter the taxonomy name
// Do not change anything below
$categories = wp_get_post_terms( $args['_page_id'], $taxonomy, array('fields' => 'ids') );
if ( !is_wp_error($categories) && count($categories) ) {
$args['post_tax_filter'][] = array(
'taxonomy' => $taxonomy, // taxonomy name
'include' => $categories, // array of taxonomy term IDs to include
'exclude' => array(),
'allow_empty' => false // allow (empty) items with no connection to any of the taxonomy terms filter
);
}
return $args;
}