Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

leandro07

Busca em conteúdo estático

Recommended Posts

Bom dia Galera, tudo bem?Então, estou com seguinte dúvida. Eu tenho um site totalmente estático, nada de banco de dados nem programado.Gostaria de saber se é possível fazer uma busca nesse conteúdo? Se sim, qual seria o melhor caminho?OBS: Postei aqui nesta seção do fórum , pois acredito que seja algo relacionado com âncora, caso queiram mudar de seção, fiquem a vontade.Abraço a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tem como sim, procure pelo google um sistema de busca simples chamado PHPSiteSearch, você o acha facilmente, acho que a última versão foi a 1.7.7, ele tinha site oficial do desenvolvedor mas ta off.Eu uso ele, é super simples e fácil de configurar, não usa nem banco de dados. Mas pra ele funcionar você tem que ter colacado a meta tag keywords em cada página .html.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, o Google lhe oferece essa opção.

 

Mais detalhes:

http://www.google.com/searchcode.html

 

Essa opção que o Grasi lhe passou é bem interessante também. Mas como seu site está em HTML o PHP pode não lhe ajudar.

 

Com JavaScript também é possível, mas complicado de explicar por aqui. Estou pensando em fazer um tutorial a respeito e publicar no meu Blog sobre Desenvolvimento Web.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá! leandro07.

 

Estou acompanhando esse tópico e preciso de uma busca interna simples, sem meta tag keywords ou Google, que não me dê muito trabalho como essa que você desenvolveu.

 

Dá pra explicar como você fez?

Tenho certeza que a galera vai gostar.

 

Valeu!!!

DaPaz.

 

 

Resolvido! Fiz uma busca com Javascript mesmo. Tipo daquelas buscas instantânia. Se alguém precisar de algo parecido me avise que eu explico como eu fiz.

 

Abraços e muito obrigado pelas dicas! http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha aí está o código que eu usei. Eu sei que dá para melhorá-lo mas tive que fazer muitos às pressas e fico assim. O importante é que funfou....=)

 

function busca_produtos(valorBusca){					// coloca a palava que o usuário digitou tudo para maiúsculas					// isso porque todos textos para busca estao em maiúsculos					  valorBusca = valorBusca.toUpperCase();					// se o usuário não digitou nada na busca, mostra todos os resultados					if(valorBusca == ""){						var array_produtos = document.getElementsByTagName('dt'); // pega todas as tags DT						  for(var i = 0; i < array_produtos.length; i++){ // percorre essas tags							  if(array_produtos[i].className == "tag_prod"){ // verifica se possui a class "tag_prod"								  var tag_dl = array_produtos[i].parentNode;								  tag_dl.parentNode.style.visibility= 'visible';								tag_dl.parentNode.style.position= 'static';							  }						  }					}else{						var array_produtos = document.getElementsByTagName('dt'); // pega todas as tags DT						var l = 1;						  for(var i = 0; i < array_produtos.length; i++){ // percorre essas tags							  if(array_produtos[i].className == "tag_prod"){ // verifica se possui a class "tag_prod"								  var tag_dl = array_produtos[i].parentNode; // 								  var valorProduto = array_produtos[i].childNodes[0].innerHTML; // pega o texto dentro desta tag								  var busca_prod = valorProduto.indexOf(valorBusca); // pega  o que o cara digitou e procura se existe dentro desse texto								  if(busca_prod == -1){ // se retornar -1 significa que indexOf veio false, então ele esconde o li									  tag_dl.parentNode.style.visibility= 'hidden';									tag_dl.parentNode.style.position= 'absolute';									tag_dl.parentNode.style.top= '0';								  }else{ // agora se retornar algo, ele mostra o li									  tag_dl.parentNode.style.visibility= 'visible';									tag_dl.parentNode.style.position= 'static';									  l++;								  }							  }						  }					}					// limpa todo div onde será mostrado a mensagem caso a busca não retorne nada					while(document.getElementById('vazio_busca').firstChild) document.getElementById('vazio_busca').removeChild(document.getElementById('vazio_busca').firstChild);						  // caso nao tenha sido achado nada na busca					  if(l == 1){						  // cria um span dentro do div vazio_busca dizendo que não foi encontrado nada						  eDIV = document.getElementById("vazio_busca");						  eSpan = document.createElement("span");						eSpan.appendChild(document.createTextNode("Não foi encontrado nenhum resultado com "+valorBusca));						eDIV.appendChild(eSpan);					  }				  }

Os produtos que o usuário iria procurar estavam dispostos da seguinte maneira. Vou coloca um deles como exemplo:

 

<li class="produto" style="height:140px;">						<a href="bit_agulha.htm">							  <img src="fotos/bit_agulha1.jpg" alt="" title="" />						</a>						<dl>							<dt class="tag_prod"><a href="bit_agulha.htm">“BIT” AGULHA DESCARTÁVEL</a></dt>							<dd>Bit" agulha descartável em aço inoxidável e canhão plástico</dd>							<dd>Tipos especiais - sob consulta</dd>						</dl>					  </li>

Qualquer coisa é só me perguntar caso alguém não tenha entendido alguma coisa.

 

 

Abraços e espero que ajude.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.