Para Desenvolvedores

Como customizar o link de resultado de busca?

Resolvido

Eu tenho um cenário onde o link de resultado de busca tem que linkar para interface de lista e passar o id do conteúdo como # no final do url. 
por exemplo: http://meuwebsite.com.br/artigos.htm#8A488ABD4D8AD90C014D8DD7D5997F73 

A interface de lista de artigos use javascript para ler esse parametro do url e destacar o conteúdo associado ao esse identificador no url.

Como posso customizar o link que está sendo indexado na busca para ter esse url especifico?

 

Por Kishnan Nedungadi

Em 12/03/19 18:46

Acompanhar pergunta

1 resposta(s):

Ordenar por:

Para fazer isso você precisa configurar seu douidefinition.xml configurando ele para chamar um class especifico seu para indexar conteúdos atraves do persisterClassName atributo do bigData como esta descrito no exemplo abaixo.

veja exemplo abaixo.

<service id="xxxxxxx">
	<sources>
		<source id="artigo" .... >
			<table>....</table>
			<fields>
				...
			<fields>

			<bigData enabled="true" persisterClassName="meuwebsite.service.artigos.ArtigoBigDataPersister"/>
			
		</source>
		...
		
</service>
 

 

Esse class deve ter seguinte estrutura:

Assumindo que o interface de lista é meuwebsite.service.artigos.list. 

public class ArtigoBigDataPersister extends ContentTableSourceBigDataPersister
{
	@Override
	protected String generateDocumentPublishedContextURL(ContentTableSource source, ISourceData row, String serviceInstanceId)
	{
		String contentId = row.get("contentId").toString();
		return "hyperlink.jsp?lumSI="+serviceInstanceId+"&lumI=meuwebsite.service.artigos.list#"+contentId;
	}
}

d

 

Com isso a indexação na busca do serviço vai funcionar como desejado.

 

Por Kishnan Nedungadi

Em 12/03/19 19:09

Entrar

Interaja com a comunidade e tenha acesso a conteúdos exclusivos.

Houve algum erro ao acessar o banco de dados. Tente novamente mais tarde.