I limit the search to post type in wp default search engine by adding a hidden field.
<input type="hidden" name="post_type" value="books" />
But I got a problem when the search string that have apostrophes in it. For example, I got a post called 'Adam's Apple', when I enter exactly 'Adam's Apple' in search input, no post was found. But when I enter ' Adam' ' (with apostrophes bit without the 's'), the post was found. But not found again if I enter 'Adam's' .
I tried it in normal post with same post's name and without limit to post type, everything working fine.
So obviously the apostrophes is the cause of this problem.
Any idea how I can fix it?