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));