Como adicionar o Google Custom Search Engine ao Discourse

Quero adicionar o Google Custom Search Engine ao meu fórum. Poderia sugerir onde e como adicionar o código do Custom Search Engine no Discourse?

O Discourse já vem com um recurso de busca bastante poderoso. Por que você gostaria de adicionar o mecanismo de busca personalizado do Google?

É, tenho que concordar, a busca do Discourse funciona bem. Nunca encontrei uma implementação de busca personalizada do Google que funcionasse bem. Mesmo que se queira gerar receita com anúncios, acho que o impacto geral seria negativo.

Acredito que não há problema algum em testar e observar o impacto na receita. Se não funcionar, podemos voltar atrás a qualquer momento. Mas, o que eu queria descobrir é como implementar.
Alguém poderia me ajudar aqui?

Não consigo imaginar que seria fácil substituir a funcionalidade de busca integrada do Discourse. Ela está profundamente integrada à própria base do aplicativo Discourse e opera no nível do banco de dados.

O Google Custom Search, até onde sei, apenas cria um índice do conteúdo do site estático, o que seria muito pior do que o que já existe. Sem falar em como integrá-lo à interface do usuário do Discourse (o aplicativo Ember) :man_shrugging:

Realmente não sei como você faria para que isso funcionasse (ou por que você gostaria de fazer isso!)

Você pode precisar criar um componente de tema para substituir/modificar o componente ou widget de busca padrão pelo que você deseja.

Não estou particularmente familiarizado com o Google Custom Search, mas meu entendimento é que ele só conseguiria pesquisar tópicos públicos. Supondo que isso seja verdade, isso significa que seus usuários não poderão pesquisar suas MPs, tópicos em categorias não públicas, tags/usuários/grupos (bloqueamos a indexação dessas páginas), etc. Se houver uma maneira de conceder ao Google acesso de administrador ao seu site, isso pode resolver alguns problemas, mas abre outros (de privacidade).

Nós suportamos o Algolia, veja Discourse Algolia Search.

Tenho quase certeza de que ela inclui apenas páginas que também são indexadas pelo G. O que, frequentemente, representa apenas uma pequena porcentagem para UGC.

Não é necessário, nem uma boa ideia, substituir a funcionalidade de busca interna do Discourse.

No entanto, não há nada de errado em adicionar uma capacidade de busca adicional, seja do Google ou de outra fonte.

O ideal é fazer isso por meio de um plugin, com sua própria rota e página.

Minha sugestão para @KranthiKiranGude é deixar a funcionalidade de busca do Discourse como está e criar um plugin com uma página/rota distinta para o GCS.

Foi exatamente isso que fizemos com nosso antigo fórum LAMP, aliás.

@neounix: Não estou tentando substituir a funcionalidade de busca existente do Discourse. Estou apenas tentando adicionar um widget ou um plugin. Seria ótimo se alguém pudesse sugerir como adicionar um componente HTML personalizado, como o Google Custom Search Engine, a todas as páginas. Vou manter a funcionalidade de busca existente do Discourse exatamente como está. Apenas queria verificar o impacto na receita.

Olá @KranthiKiranGude

Com base na experiência anterior na implementação do GCSE em uma aplicação de fórum, sugiro dois plugins:

  1. Componente de tema para a barra de pesquisa do GCSE. Você poderá então colocar essas barras de pesquisa do GCSE onde quiser no seu site. Isso é bastante simples de fazer.

  2. Plugin para criar uma página do Discourse (rota) para exibir os resultados da sua pesquisa do GCSE. Isso será um pouco mais complicado do que o componente de tema (para mostrar a barra de pesquisa); então, talvez você queira postar no Meta Marketplace e pedir ajuda a um dos excelentes desenvolvedores de plugins do Discourse.

Se seguir por esse caminho, por favor, considere compartilhar esse plugin com a comunidade aqui.

Obrigado!

Olá @neounix,

Você poderia me ajudar com um exemplo de trecho de código para sua sugestão 1? Tentei colar o código GCSE na seção do tema, mas ele não aparece quando faço a pré-visualização.

Obrigado.

Olá @KranthiKiranGude

O link abaixo é um bom ponto de partida. Você também pode pesquisar no Meta usando as palavras-chave “theme component”.

Veja também:

E também https://github.com/topics/discourse-theme-component (exemplo de código):

https://github.com/topics/discourse-theme-component

Divirta-se!

Incluí o script do GCSE na seção “Editar CSS/HTML”. No entanto, a caixa de pesquisa não está aparecendo. Consigo ver o código no código-fonte da página, mas o elemento não está visível na interface do usuário.

Anteriormente, quando a pesquisa do discourse não retornava resultados, aparecia um botão com o rótulo ‘pesquisar seu site com o google’.
Não era mais útil do que simplesmente abrir a pesquisa do google já preenchida com isto:

"site:seusitename.com "