Pergunta

I have a Multi user field in my site collection. SharePoint has created a crawled property named ows_MyUserField. I have created a managed property MyUserField with multiple values set to true. I have created some items with multiple users in the MyUserField field. I have run a full crawl. When I set this field as a refiner in my refinement panel I see all the values on 1 line seperated by a ;

Foi útil?

Solução

I noticed there is also a automatic crawled property called “ows_q_USER_MyUserField”. When I map a new managed property on this crawled property I do get a correct filter. The only problem is that the user are shown in a not so friendly format.

enter image description here

I have created a new refinement filter display template to display the username that is between the |. For the first two items in the refiner this won't do the job but in my case all users are shown like the third filter in the image.

I have shared my display template here:

https://gist.github.com/waaromikniet/b99ef686312b5dbab5cfa8791f3d8f41#file-filter_user-html

On line 266 I created a js function to get the name of the user between the | | ( in my case this is always correct, in the image example it won't work for the first 2)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top