Disclaimer: This website requires JavaScript to function properly. Some features may not work as expected. Please enable JavaScript in your browser settings for the best experience.

HomeDev guideRecipesAPI Reference
Dev guideUser GuidesLegal TermsNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev guide

Index content areas

Describes methods for indexing content in Optimizely Content Management System (CMS) content areas.

Optimizely Search & Navigation does not index content in a content area by default.

In Optimizely Content Management System (CMS), you can place content in a content area, which is a property of the type ContentArea. While CMS does not index content in a content area by default as part of the main content, you can use methods to index such content, such as block-type content inside a content area.

  • Use the content type's IndexInContentAreas attribute. CMS indexes instances of the content type dropped in a content area as a part of the main content.
  • In admin mode, create a Boolean property for the content type (selected or not selected) with the name IndexInContentAreas, and set its value to True. CMS indexes instances of that content type in a content area as part of the main content.
  • Change the default behavior of the IContentIndexerConventions.ShouldIndexInContentAreaConvention.
  • To limit the serialized object depth when having nested ContentAreas, the serialization contract for the ContentArea type can be modified using the MaxDepthContentAreaConverter method (by default nested ContentAreas are indexed):
    SearchClient.Instance.Conventions.ForinstancesOf<ContentArea>().ModifyContract(x => x.Converter = new MaxDepthContentAreaConverter(int maxDepth));