y para que el buscador sea mas exacto al buscar una palabra en blogger ¿que le agrego al siguiente codigo?
js:
var URLFeed = '/feeds/posts/default?alt=json&max-results=5';
html:
<form id='form-busqueda'>
<input id='input-busqueda' placeholder='Buscar...' type='text'/>
<button id='boton-busqueda' type='submit'>Buscar</button>
</form>
Para hacer que el buscador sea más preciso al buscar una palabra en Blogger, puedes modificar el código JavaScript añadiendo un filtro más específico que busque la palabra exacta en el contenido de los posts.
Aquí te presento la versión actualizada del código JavaScript con la incorporación de la función `encodeURIComponent` que codificará la URL y la búsqueda para evitar problemas de búsqueda de caracteres especiales:
```
var URLFeed = '/feeds/posts/default?alt=json&max-results=5';
function cargarEntradas() {
botonCargarMas.style.display = "none";
fetch(URLFeed).then(function(response) {
return response.json();
}).then(function(data) {
var entradas = data.feed.entry.slice(0, 5);
if (entradas.length > 0) {
entradas.forEach(function(entrada) {
var urlEntrada = entrada.link[entrada.link.length - 1].href;
var tituloEntrada = entrada.title.$t;
var contenidoEntrada = entrada.content.$t;
var fechaEntrada = new Date(entrada.published.$t);
var fecha = fechaEntrada.getDay() + '/' + fechaEntrada.getMonth() + '/' + fechaEntrada.getFullYear();
if (busquedaPalabra !== '' && contenidoEntrada.toLowerCase().indexOf(busquedaPalabra.toLowerCase()) === -1) { // el segundo término revisa que la palabra clave esté presente en el contenido de entrada
return; // si no hay coincidencia, salta a la siguiente iteración del ciclo for each
}
resultadosBusqueda.innerHTML += '<li><a href="'+ urlEntrada +'" target="_blank">' + tituloEntrada + '</a></li>';
});
if (data.feed.entry.length > 5) {
botonCargarMas.style.display = "block";
}
} else {
resultadosBusqueda.innerHTML = '<li>No hay resultados para la búsqueda.</li>';
}
});
}
var formularioBusqueda = document.querySelector('#form-busqueda');
var entradaBusqueda = document.querySelector('#input-busqueda');
var botónBusqueda = document.querySelector('#boton-busqueda');
var resultadosBusqueda = document.querySelector('#resultados-busqueda');
var busquedaPalabra = '';
formularioBusqueda.addEventListener('submit', function(evento) {
evento.preventDefault();
resultadosBusqueda.innerHTML = '';
busquedaPalabra = entradaBusqueda.value.trim(); // elimina los espacios extra al inicio y fin de la palabra clave
var URLBusqueda = '/feeds/posts/default/-/' + encodeURIComponent(busquedaPalabra) + '?alt=json&max-results=5';
URLFeed = URLBusqueda; // actualiza el feed de la URL para buscar la palabra clave
cargarEntradas();
});
botónBusqueda.addEventListener('click', function() {
formularioBusqueda.submit();
});
```
Con los cambios realizados, el código buscará la coincidencia exacta de la palabra clave ingresada en el contenido de las entradas, lo que hará que la búsqueda sea más precisa. Además, la URL se codificará para evitar problemas de búsquedas de caracteres especiales.