Take the community feedback survey now.

Henrik Fransas
Mar 11, 2014
  5928
(1 votes)

Indexing only referenced files with EPiServer Find 7.5

Henrik wrote a very good blog post on this for the previous version of Find that you can find here:

http://www.lindstromhenrik.com/indexing-only-referenced-vpp-files-with-episerver-find/

If you want it to work with iContent all you have to change this:

Remove this:

FileIndexer.Instance.Conventions.ShouldIndexVPPConvention = new ShouldIndexVPPConvention(x => true);
 
Change this:
FileIndexer.Instance.Conventions.ForInstancesOf<UnifiedFile>().ShouldIndex(x =>
To:
ContentIndexer.Instance.Conventions.ForInstancesOf<IContentMedia>().ShouldIndex(x =>
 
Then change this row:
var softLinks = contentSoftLinkRepository.Load(x.VirtualPath);
To:
var softLinks = contentSoftLinkRepository.Load(x.ContentLink, true);
 
And it should be up and running!

Good luck!

Mar 11, 2014

Comments

Kim Medin
Kim Medin May 19, 2014 02:32 PM

This doesn't seem to work if the reference is from a property on a page that doesn't have a template (settings page, container pages etc).
Any ideas if that can be solved?

Henrik Fransas
Henrik Fransas May 19, 2014 02:41 PM

Kim, I didn't know that, thanks for the information. It must be that those links does not register as softlinks. It should not be hard to extend the function to also search through all the properties that are contentreference to a mediadata-content. I do not have the time to fix that right now, but will look into it

Chaudhry Mohsin Ali
Chaudhry Mohsin Ali Jun 20, 2018 10:15 AM

Where should we include this file? Should it be in an init module?

Chaudhry Mohsin Ali
Chaudhry Mohsin Ali Jun 20, 2018 11:02 AM

And when we unlink the file what should happen then?

For example when we add a file in the content area it should appear in the search result but after deleting the file from the content how should we update the index, so that the file is not included next time?

Please login to comment.
Latest blogs
The Sweet Spot: Hybrid Headless Architecture

When it comes to content management architecture, the pendulum often swings between tightly coupled “headed” CMS setups and the flexibility of full...

Minesh Shah (Netcel) | Sep 4, 2025

Preview Unpublished Pages and Blocks on the Frontend (Optimizely CMS 12)

Introduction In my previous post , I explained how to customize the ContentArea rendering pipeline in Optimizely CMS 12 so editors can see...

Adnan Zameer | Sep 4, 2025 |

How to automatically remove orphaned Opti jobs from the DB

Optimizely CMS provides a simple yet powerful built-in job system that handles most standard scheduling scenarios with ease. Developers can easily...

Stanisław Szołkowski | Sep 4, 2025 |

A day in the life of an Optimizely Developer - The Optimizely Opal Tools SDK: How to Extend Opal with Your Own Superpowers

If you’ve spent any time with  Optimizely Opal —Optimizely’s cross‑platform AI assistant—you’ll know it can already plan, generate, analyze, and...

Graham Carr | Sep 4, 2025

Building Faster Feedback Loops with Opal: Two Hackathon Projects

Two Opal Hackathon projects explored how to bridge data and action. Using the Optimizely.Opal.Tools SDK, we extended Opal with new tools, showing h...

Andy Blyth | Sep 3, 2025 |

Custom Deepl Glossary Translation in Optimizely CMS

Introduction in this post, I have created a custom DeepL glossary translation for specific words. For example, when translating from English to...

Deepmala S | Sep 3, 2025