Ir ao conteúdo

Posts recomendados

Postado

 

Se o que você deseja é criar um sistema de busca interna no site, o que o @DiF lhe disse, é o que deve ser feito, porém se não quiser ou outro motivo para não ter o trabalho de desenvolver e quiser sim usar um sistema já pronto, a Google lhe dá uma força.

 

Leia esse pequeno artigo para lhe esclarecer o que fazer e como fazer e desse ponto em diante é se aprofundar no assunto abordado do artigo :https://www.agenciamestre.com/web-analytics/site-search-tutorial-seo-busca-interna/

 

Há também uma discussão aqui datada de 5 de Fevereiro de 2006 sobre o mesmo assunto, talvez lhe ajude ainda mais!

veja: 

 

 

O que o @DiF disse também, no final desse tópico é o mesmo dito aqui atualmente e procede!:thumbsup:

 

Postado
<HTML>	
	<HEAD>
		<title>teste busca js</title>
	</head>	
	<body>
      <FORM method="get"> <INPUT name="query"><INPUT type=submit value="Buscar"> </FORM>
<SCRIPT>
function kw_list ()
{
this.keywords = new Array ();
this.num_words = 0;
this.query = "";
this.original_query = "";
this.query_length = 0;
this.possible_points = 0;
this.multiple = points_title + points_keywords + points_description;
this.get_words = get_query;
this.no_query = no_query_found;
}
function get_query ()
{
this.query = top.location.search.substring (top.location.search.indexOf ('=') + 1);
while ((the_plus = (this.query.indexOf ("+", 0))) != -1)
{
this.query_length = this.query.length;
this.query = this.query.substring (0, the_plus) + " " + this.query.substring (the_plus + 1);
}
this.original_query = unescape (this.query);
this.query = this.original_query.toLowerCase ();
this.query_length = this.query.length; 
if (this.query != "")
{
var query_pointer = 0;
var end_word = 0;
var at_end = 0;
while ((this.num_words <= (max_keywords - 1)) && (! at_end))
{
end_word = this.query.indexOf (" ", query_pointer);
if (end_word == query_pointer)
query_pointer++;
else
{
if (end_word >= (this.query_length - 1))
at_end = 1;
if (end_word != -1)
this.keywords[this.num_words] = (this.query.substring (query_pointer, end_word)).toLowerCase ();
else
{
this.keywords[this.num_words] = this.query.substring (query_pointer, this.query_length);
at_end = 1;
}
this.num_words++;
if (query_pointer != -1)
query_pointer = end_word + 1;
if (query_pointer > (this.query_length - 1))
at_end = 1;
}
}
if (this.num_words == 0)
return (0);
else
{
this.possible_points = this.multiple * this.num_words;
return (1);
}
}
else
return (0);
}
function no_query_found ()
{
}
function entry (url, title, keywords, description)
{
this.url = url;
this.title = title;
this.keywords = keywords;
this.description = description;
this.points = 0;
this.search_entry = find_keyword;
this.print_entry = print_result;
}
function find_keyword (the_word)
{
var the_title = this.title.toLowerCase ();
var the_keywords = this.keywords.toLowerCase ();
var the_description = this.description.toLowerCase ();
if ((the_title.indexOf (the_word)) != -1)
this.points += points_title;
if ((the_keywords.indexOf (the_word)) != -1)
this.points += points_keywords;
if ((the_description.indexOf (the_word)) != -1)
this.points += points_description;
}
function print_result (possible_points)
{
document.writeln ('<A HREF="' + this.url + '" target="meio">' + this.title + '</A> - ' + this.description + '<br>');
}
function no_entry_printed (the_query)
{
document.writeln ('<link rel="stylesheet" href="http://hqbr.online/text.css">');
document.writeln (" Não há ocorrencia da palavra" + the_query + ".</P>"); 
}
function print_intro (the_query)
{
document.writeln ("Os resultados da pesquisa por" + the_query + "</B></U> são:</P>"); 
}
function begin_search ()
{
var key_list = new kw_list;
var entry_printed = 0;
if (! key_list.get_words ())
key_list.no_query ();
else
{
var counter = 0;
var counter2 = 0;
for (counter = 0; counter < entry_num; counter++)
for (counter2 = 0; counter2 <= (key_list.num_words - 1); counter2++)
the_entries[counter].search_entry (key_list.keywords[counter2]);
for (counter = key_list.possible_points; counter > 0; counter--)
{ 
for (counter2 = 0; counter2 < entry_num; counter2++)
{
if (counter == the_entries[counter2].points)
{
if (entry_printed != 1)
{
entry_printed = 1;
print_intro (key_list.original_query);
}
the_entries[counter2].print_entry (key_list.possible_points);
}
}
}
if (! entry_printed)
no_entry_printed (key_list.original_query);
}
}
the_entries = new Array ();

//aqui vai as entradas para a pesquisa

the_entries[0] = new entry ("http://hqbr.online/", "teste dead 1", "The Walking Dead, zumbi, apocalipse, caos", "1");

the_entries[1] = new entry ("http://hqbr.online/","teste dead 2","The Walking Dead, zumbi, apocalipse, caos","2");

the_entries[2] = new entry ("http://hqbr.online/","teste dead 3","The Walking Dead, zumbi, apocalipse, caos","3");

the_entries[3] = new entry ("http://hqbr.online/","teste dead 4","The Walking Dead, zumbi, apocalipse, caos","4");

the_entries[4] = new entry ("http://hqbr.online/","teste dead 5","The Walking Dead, zumbi, apocalipse, caos","5");

//abaixo vai o número de entradas existentes

var entry_num = 2; //aumenta de acordo com as obcoes de busca no caso 2 ate agora

var max_keywords = 20; //aumenta de acordo com as obcoes de busca no caso 2 ate agora

var points_title = 4; //aumenta de acordo com as obcoes de busca no caso 2 ate agora

var points_keywords = 4; //aumenta de acordo com as obcoes de busca no caso 2 ate agora

var points_description = 1;

begin_search ();

	</script>
	</body>
</html>

consegui esse aqui com puro js, mas não consigo aumentar os the_entries, só aparece 2 na pesquisa... quem puder ajudar :)

 

salve o código como .html

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!