Cómo crear un plugin de búsqueda para Firefox en tu sitio web

Soy totalmente consciente de lo inútil de esta entrada. Pero me encanta hacer experimentos y aprender cosas nuevas, aunque sean inútiles, asi que después de pedir disculpas, vamos al tema.

No se si los usuarios de Firefox sabréis que se pueden añadir nuevos motores de búsqueda a la barra de búsqueda del navegador fácilmente, y que incluso podemos crear nuestros propios plugins de búsqueda sin demasiada complicación, con lo que podemos por ejemplo permitir a los lectores buscar entradas de la bitácora desde su navegador. Para ello basta con crear un pequeño archivo de texto en cualquier editor indicando a Firefox el action del formulario para buscar y los diferentes campos del formulario. Vamos a ver un ejemplo. Lo primero que tenemos que hacer es crear un archivo con extensión src, por ejemplo zootropo.src, y abrirlo en un editor cualquiera.

El archivo comienza con una etiqueta search con parámetros con información como el nombre del plugin (name), el método usado para enviar los datos por parte del formulario (method), y el parámetro action del formulario (action). Como valor de name podemos poner lo que queramos. Para obtener los valores de method y action recurriremos al código fuente de la página web. Por ejemplo mi formulario de búsqueda tiene esta pinta:

<form id=»searchform» name=»searchform» method=»get» action=»/index.php»>
    <input name=»s» id=»s» size=»15″ type=»text»>
    <input name=»subButton» value=»Buscar» type=»submit»>
</form>

Donde podemos ver que el valor de method es get, y el valor de action http://mundogeek.net/index.php, por lo que la cabecera del plugin quedaría así:

<search
    name=»Zootropo. Diario del Mundo Geek»
    action=»http://mundogeek.net/index.php»
    method=»GET»
>

Dentro de la etiqueta search tendremos una serie de etiquetas input, una por cada campo en el formulario. Cada una de estas etiquetas tendrá un atributo name con su nombre y un atributo value indicando su valor, exceptuando la caja de texto donde se escriben los términos de búsqueda, que tendrá un atributo user en lugar de value. Los valores para name y value se obtienen de nuevo a partir del código fuente.

En nuestro caso solo tenemos la caja de texto y un botón, por lo que tendremos dos inputs, un input con nombre subButton y valor «Buscar» por el botón y otro con nombre «s» por la caja de texto.

<search
    name=»Zootropo. Diario del Mundo Geek»
    action=»http://mundogeek.net/index.php»
    method=»GET»
>
    <input name=»s» user=»»>
    <input name=»subButton» value=»Buscar»>
</search>

Con esto hemos terminado el archivo src. Opcionalmente, podemos crear una imagen de 16×16 que sirva como icono representativo del nuevo motor de búsqueda, con el mismo nombre que el archivo src. Por último crearemos un pequeño script para instalar el motor en el navegador del usuario:

<script language=»javascript»>
function instalar( ){
if ((typeof window.sidebar == «object») && (typeof window.sidebar.addSearchEngine == «function»)){
    window.sidebar.addSearchEngine(
    «http://mundogeek.net/wp-content/zootropo.src»,
    «http://mundogeek.net/wp-content/zootropo.jpg»,
    «Zootropo. Diario del Mundo Geek»,
    «» );
}
else{
    alert(«Tu navegador no está soportado»);
}
}
</script>

Los parámetros de addSearchEngine, evidentemente, deben ser modificados. Los dos primeros indican las direcciones web de el archivo src y del icono, en el caso de que exista. Los dos últimos son respectivamente el nombre del plugin y la categoría.

Por último, el enlace que usemos para instalar el plugin, llamará a la función que acabamos de crear:

<a href=»javascript:instalar()»>Instala el plugin de búsqueda</a>

Con lo que el resultado final es: Instalar el plugin de búsqueda

Plugin de búsqueda

Actualización: Como bien dice Rick en los comentarios, tanto el src como la imagen de icono se guardan en la carpeta searchplugins, dentro del directorio de la aplicación. Para borrarlo basta con borrar ambos archivos.

38 comentarios en «Cómo crear un plugin de búsqueda para Firefox en tu sitio web»

  1. Pingback: superporcel

  2. Como siempre, interesante entrada.
    Siempre da gusto aprender algo nuevo 😉

    PD: Ahora que me fijo, eso de la vista previa de los comentarios está muy bién. ¿De donde lo has sacado?

  3. Oki, gracias por el copy&paste 🙂
    PD (otra vez): ¿a ti esas horas en formato am/pm te gustan? Porque a mi me tienen un regustillo yankee que no puedo con el (me refirero a la hora que indica cuando se ha echo cada comentario).
    Joer, que repelente soy…. 😛

  4. No, si que se podía cambiar ya lo sabia yo, la función date de PHP da para mucho 🙂
    Y no, por ahora no se me ocurre nada más, asi que de momento te libras ;):P

  5. OK, gracias Armonth, en cuanto llegue a casa lo pongo.
    PD (XD): que mal se ve mi avatar, la leche, con lo bonito que lo veo en la web de gravatar… Que narices pasará? Será porque es un png? Otra cosa más para hacer al llegar a casa.

  6. Se supone que debiera ser un kanji negro sobre un fondo blanco…
    He enviado un gif, a ver si es por eso…
    PD de nuevo: Si habeis echo el ganso con los buscadores (como yo) que sepais que para eliminarlos teneis que ir al directorio del firefox, luego a searchplugins y ahi os cargais el .src y la imagen y reiniciais el firefox.
    Saludos.

  7. Pingback: Weblog de un geek malagueño » Búsquedas de firefox en este weblog

  8. Felicidades por el artículo, no sabía que fuera tan sencillo hacer un plugin de busqueda 😯 :OO Este Firefox nos depara unas sorpresas tan agradables xD

    Lo que sí me gustaría saber es si es posible hacerlo para formularios con method POST, pues yo lo he hecho así y no funciona (no busca nada), sin embargo con method GET si que va. En realidad quiero integrarlo en un foro phpbb que usa el method POST, sin tener que hurgar en el código PHP para que admita los GET.

    Un saludote

  9. Muchas gracias,
    muy útiles lasinstrucciones, ya agregué tres buscadores a mi lista (la Biblia Reina Valera, SubDivx y MercadoLibre.com) y ando buscando un buen diccionario de sinónimos en línea.

    Una pregunta:

    ¿Cómo puedo ordenar la lista (o sucesión) de buscadores que se despliega? El orden actual parece aleatorio.

    Gracias de nuevo,

    Joaquín.

  10. Chévere Zootropo,
    Lo curioso es que, aunque no he encontrado algún criterio atribuible al Firefox, el orden (o desorden) es siempre el mismo. No tiene que ver con el orden en el que se agregan los buscadores, ni con alguna referencia alfabética, ni con la fecha en la que se guardaron los archivos src, ni con su tamaño en bytes… Seguiré buscando.

  11. Pingback: Unbyted » Blog Archive » Más buscadores para Firefox

  12. Pingback: meneame.net

  13. Pingback: Dioxido Digital

  14. Pingback: El Cajón de Bronch v2.0 » Blog Archive » [nanopost] Cómo hacer un plugin de búsqueda para Firefox

  15. Hola a todos, muy bueno el tutorial. Por cierto ya generé un par de buscadores :mrgreen:

    Una consulta: Para Foros phpBB intenté hacer un par de buscadores pero siempre me aparecen los resultados como temas y no cómo tópicos (como quiero que aparezcan) ¿Alguien se le ocurre como hacerlo?

    Agradezco su ayuda, saludos

  16. En este blog se muestra otra forma de hacerlo:

    http://www.start.com.my/blog/fixing-firefox-search-engine-order/

    En el nombre de las nuevas entradas, uno escribe browser.search.order.X, donde ‘X’ es un número. Los número son ordenados de forma consecutiva por FireFox. Asociado cada uno a un plugin motor de búsqueda, por su nombre, tal como aparece en el index desplegable de buscadores (NO por el nombre de archivo src).

    Eso sería todo, aunque en las nuevas versiones de FireFox esto ya no sería necesario, pues han incorporado las ordenación alfabética…

  17. Pingback: Personalizar caja de búsqueda en Firefox » La mate por un yogur

  18. Holas. Tu articulo esta bueno. Estaba buscando una forma de escribir plugins para firefox q hagan otras cosas como complementar paginas web, como puedo hacer eso, o donde encuentro informacion al respecto.

  19. Pingback: Búsquedas en Firefox | La otra bola de cristal

  20. Hola muy bueno lo que publicaste, pero tengo un problemita, lo que no entendi es que debo crear un archivo .src y luego un .js, y eso lo guardo en una carpeta especifica? o en cualquier carpeta, y el enlace para la instalacion del plugin donde lo guardo?, si fueras tan amable de decirme eso, soy novata en esto y quiero aprender.
    Saludos
    Gabriela

  21. Yo tengo una base de datos en sql en mi servidor ¿puedo hacer un mecanismo de busqueda en firefox desde mi pagina con ese metodo?

Responder a Joaquín Cancelar respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.