One easy way would be to add a public property to your model then write some code to load the items XHtmlString property and any blocks returning a string of exactly the content. This would then be pushed to find and could be used for the search text.
I've also found https://world.episerver.com/blogs/Per-Magne-Skuseth/Dates/2016/1/episerver-find-index-blocks-in-xhtmlstring/ which might be of interest
I want the block content to be included in a page's SearchText property when dragged into an XhtmlString property on that page.
Now the name of the block instance is added to page's SearchText instead of the content of that block instance.
How can I achieve it?
N.B. I am using [IndexInContentAreas] attribute for those blocks that I want to be included in a page's SearchText property when used in ContentAreas and that is working correctly!