3

As you are using SXA, why not use the "ootb" option to add extra fields that include data from a linked item: The doc here is talking about facets, but the main purpose is actually creating an index field: https://doc.sitecore.com/users/sxa/93/sitecore-experience-accelerator/en/extend-search.html#UUID-3cbc7b12-9aed-f7d2-cd98-...


2

After working through this issue with sitecore support, it was determined that it was the documentOptions line that was the issue: <configuration ref="contentSearch/indexConfigurations/customSolrIndexConfiguration"> <documentOptions type="Sitecore.ContentSearch.SolrProvider.SolrDocumentBuilderOptions, Sitecore.ContentSearch.SolrProvider"...


2

I think the issue is when you try to resolve the device. Rather than use DeviceItem.ResolveDevice - you know you want the default device, so you can just get that directly. Like this: public string GetDataSourceContent(Item item) { string data = string.Empty; var deviceItem = item.Database.GetItem("{FE5D7FDF-89C0-4D99-9AA3-B5FBD009C9F3}"); var ...


2

An alternative way to get list of datasource items referenced to the current item is to use the Link database, Here is an example: //Get all the datasource items by filtering the item referneces var itemLinks = Sitecore.Globals.LinkDatabase.GetReferences(item) .Where(r => (r.SourceFieldID == Sitecore.FieldIDs.LayoutField ...


1

Rather than using the index on the item, try to use either the field name or the field ID to get exactly what you want. return string.Join(",", multilist.Select(t => t.Fields["My Field Name"].Value).Where(x => !string.IsNullorEmpty(x))); OR var fieldID = new ID("{19C00FAC-DB88-4634-B002-94742C2DE715}"); // ... code here ... return string.Join(",", ...


1

As discussed above in comments, you goal here is to filter an indexed document based on some coordinate from a list of coordinates, to achieve that you should break each coordinate in its own index document so that you can run your spatial search against it. I would suggest to either add coordinates as child items (instead of multi list), this way you can ...


1

This is standard Sitecore behavior. GroupedDroplinkField is a type inheriting from LookupField type. That field's value is only a Sitecore ID of the target item, without any information about language or anything else. Your indexable item may use Thai language, but when you call contentTypeField.TargetItem, Sitecore gets the item in your current context ...


1

When you don't select [don't move to right side] an item in multilist field then that won't be published even if you check "Publish related items". Because publish related items basically runs <getItemReferences>. One of the pipeline inside that AddItemLinkReferences will look for the linked items in the published item. It won't find the multilist ...


1

There is no out-of-the-box variant definition item to fetch content from an index. But you can create it yourself. One way would be to use NVelocity. A nice blog post on how to extend that can be found here: https://michaellwest.blogspot.com/2017/04/custom-rendering-variant-token-tool-for-sxa.html Create your processor, add it to the ...


Only top voted, non community-wiki answers of a minimum length are eligible