Have you installed the episerver.search nuget package?
Unless you are using Episerver Find as Henrik Fransas suggested.
Then if you can find them in the edit mode but not on the web page your episerver partner has not done a correct job.
Propbably they have forgot to add them as source on where to search
We are experiencing a problem that media are not searchable in the Media pane in Episerver CMS Edit. The site itself is using Episerver Find, and Episerver Search is set to active=false.
I don't know if Find have another support for it but the default is that you need episerver.search active to search for media in CMS admin.
Installing the episerver.search nuget will set active=true.
I just found the reason for this.. I have disabled indexing of my ImageFile objects in Episerver Find to hide them from site search, not knowing this would hide from internal media search too.
Hi
An old ticket but still posting my answer to help other people facing the same issue. As mentioned above one of our clients was having the same issue. Upon reviewing their code found the following lines of code
ContentIndexer.Instance.Conventions.ForInstancesOf<IContent>().ShouldIndex(x => false); - Dasables block searches
ContentIndexer.Instance.Conventions.ForInstancesOf<ImageFile>().ShouldIndex(x => false);
ContentIndexer.Instance.Conventions.ForInstancesOf<GenericMedia>().ShouldIndex(x => false); - Disables image searches.
Unfortunatley this stops the internal Edit menu search too.
You need to remove the above code and filter the search results on your search page to not return images and blocks.
Seems to work for us.
If anyone has any other solution to this I am all ears.
Thanks
Kind Regards
Sandeep
Sometimes you may have a reason to not index everything. This could be the case if you have content that never needs to be returned in a query, or maybe you have some private information that shouldn't be stored in the index. You may simply be trying to keep the size of your index down and have made some sacrifises in terms of what gets indexed.
For whatever reason that you don't want to index tpes of content, restrict indexing by doing something like
ContentIndexer.Instance.Conventions.ForInstancesOf<YOURCONTENTTYPE>().ShouldIndex(x => false)
Unless you have a reason for not storing all of your content within the index, remove all indexing restrictions. This will ensure that it is searchable in the authoring instance of Episerver.
If you are indexing everything but only want to return content of a specific type, then include that in your query.
One last thing:
ContentIndexer.Instance.Conventions.ForInstancesOf<IContent>().ShouldIndex(x => false);
does not simply remove blocks from the index, but also any page/media/product/etc. content that implements IContent. To understand the full ramifications of this please see this page which contains a diagram showing what I mean https://world.episerver.com/documentation/developer-guides/CMS/Content/
Sometimes you may have a reason to not index everything. This could be the case if you have content that never needs to be returned in a query, or maybe you have some private information that shouldn't be stored in the index. You may simply be trying to keep the size of your index down and have made some sacrifises in terms of what gets indexed.
For whatever reason that you don't want to index tpes of content, restrict indexing by doing something like
ContentIndexer.Instance.Conventions.ForInstancesOf<YOURCONTENTTYPE>().ShouldIndex(x => false)
Unless you have a reason for not storing all of your content within the index, remove all indexing restrictions. This will ensure that it is searchable in the authoring instance of Episerver.
If you are indexing everything but only want to return content of a specific type, then include that in your query.
One last thing:
ContentIndexer.Instance.Conventions.ForInstancesOf<IContent>().ShouldIndex(x => false);
does not simply remove blocks from the index, but also any page/media/product/etc. content that implements IContent. To understand the full ramifications of this please see this page which contains a diagram showing what I mean https://world.episerver.com/documentation/developer-guides/CMS/Content/
Sometimes you may have a reason to not index everything. This could be the case if you have content that never needs to be returned in a query, or maybe you have some private information that shouldn't be stored in the index. You may simply be trying to keep the size of your index down and have made some sacrifises in terms of what gets indexed.
For whatever reason that you don't want to index tpes of content, restrict indexing by doing something like
ContentIndexer.Instance.Conventions.ForInstancesOf<YOURCONTENTTYPE>().ShouldIndex(x => false)
Unless you have a reason for not storing all of your content within the index, remove all indexing restrictions. This will ensure that it is searchable in the authoring instance of Episerver.
If you are indexing everything but only want to return content of a specific type, then include that in your query.
One last thing:
ContentIndexer.Instance.Conventions.ForInstancesOf<IContent>().ShouldIndex(x => false);
does not simply remove blocks from the index, but also any page/media/product/etc. content that implements IContent. To understand the full ramifications of this please see this page which contains a diagram showing what I mean https://world.episerver.com/documentation/developer-guides/CMS/Content/
Sometimes you may have a reason to not index everything. This could be the case if you have content that never needs to be returned in a query, or maybe you have some private information that shouldn't be stored in the index. You may simply be trying to keep the size of your index down and have made some sacrifises in terms of what gets indexed.
For whatever reason that you don't want to index tpes of content, restrict indexing by doing something like
ContentIndexer.Instance.Conventions.ForInstancesOf<YOURCONTENTTYPE>().ShouldIndex(x => false)
Unless you have a reason for not storing all of your content within the index, remove all indexing restrictions. This will ensure that it is searchable in the authoring instance of Episerver.
If you are indexing everything but only want to return content of a specific type, then include that in your query.
One last thing:
ContentIndexer.Instance.Conventions.ForInstancesOf<IContent>().ShouldIndex(x => false);
does not simply remove blocks from the index, but also any page/media/product/etc. content that implements IContent. To understand the full ramifications of this please see this page which contains a diagram showing what I mean https://world.episerver.com/documentation/developer-guides/CMS/Content/
Hi Marcus
Thanks for the reply. The client's developers had done the code. I have asked for the reason for doing this. Most probably as you have said might be to keep the size of the index down.
Not great that both searches are tied up as they would need to index thousands of images for this to work.
I had already updated the code in lines of your feedback.
Thanks again
Kind Regards
Sandeep
Hi, I am new to CMS search and I am also getting the same issue whenever I try to search for any Blocks or Media files in CMS website, It will always return zero results, even if we know a file with that name is avilable. I tried to do the indexing from the CMS website using Admin -> Tools->Index Site content, and it seems that content was indexed as the time got changed after doing Index. but still not able to search blocks and Media. Is there something wrong with our implementation of Episerver ? Is something not turned on that should be indexing content in the CMS? I tried to check my Search configration settings in Config -> Tools Settings -> Search Configration but when I click on Search Configration then it shows me CMS login page but when I enter the credentials to login again then it doesn't let me login and I am not able to see Search configration. Any Help will be appriciated.
Currently I am unable to use the search function for blocks or media. It will always return zero results, even if we know a file with that name is avilable. Is there something wrong with our implementation of Episerver 10? Is something not turned on that should be indexing content in the CMS?