Publicado el Martes 25 de Diciembre del 2007 @ 15:43 por Armonth.
Y quién dice en Firefox dice también en Internet Explorer.
En agosto hice una página con motores de búsqueda que con un click se añadían a los buscadores de Mozilla Firefox.
Este sistema depende de que el lector llegue a la web donde le permitimos añadirlo y haga click para ello ¿por qué no hacerlo más fácil?. Concretamente una entrada en el menú de buscadores que aparezca al visitar el sitio, cómo se puede apreciar en la imagen que acompaña la entrada.
Las ventajas son claras: no requiere javascript, fácil de implementar, se puede poner en cualquier plantilla por defecto, el código en portada es una línea, es compatible no sólo con Firefox si no también con Internet Explorer y el campo “Añadir buscador” sólo aparece en tu blog por lo que no saturas la lista del usuario.
Por último cabe mencionar que es una “implementación” adaptada de una entrada del blog de menéame donde al verlo me animé a ponerlo en práctica (no llegue a mirarlo antes pero pensé en su momento que sería un rollo de implementar).
Lo único que hace falta es un fichero XML y una línea de código, crearemos en nuestra plantilla (wp-content/themes/loquesea/) el fichero opensearch.php con el siguiente contenido:
<?php require_once('../../../wp-config.php'); ?>
<?php header('Content-Type: text/xml; charset=utf-8'); ?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
xmlns:moz="http://www.mozilla.org/2006/browser/search/">
<ShortName><?php bloginfo('name'); ?></ShortName>
<Description>Buscador de <?php bloginfo('name'); ?></Description>
<InputEncoding>UTF-8</InputEncoding>
<Image height="16" width="16"><?php bloginfo('url'); ?>/favicon.ico</Image>
<Url type="text/html" method="GET" template="<?php bloginfo('url'); ?>/">
<Param name="s" value="{searchTerms}"/>
</Url>
<SearchForm><?php bloginfo('url'); ?></SearchForm>
</OpenSearchDescription>
Lo que hacemos es crear el fichero PHP que será enviado como XML, los campos son autodescriptivos pero por completar:
/?s= seguido de los términos de búsqueda.Por último sólo tenemos que añadir una línea en el fichero header.php:
<link rel="search" type="application/opensearchdescription+xml" title="Buscador de <?php bloginfo('url'); ?>" href="<?php bloginfo('template_url') ?>/opensearch.php" />
Y ya está.
Aparte de que podemos extenderlo a cualquier formato así nos ahorramos un plugin e incluso podemos ahorrarnos toda la parte de PHP (salvo el header()) poniendo el nombre del blog, las URL’s y la descripción a mano sin usar funciones. En realidad así lo tengo yo pero lo he puesto con funciones para quien no quiera tocar código.
Vaya, nunca pensé que fuera tan sencillo, además sirve ya tengas wp o lo que sea. Acabo de aplicarlo en uno de los sitios que llevo, no creo que mucha gente lo use porque la mayoría de los usuarios utilizan ie6 así que ni se enterarán pero total no me ha llevado ni 5 minutos xD. Muchas gracias por ponerlo aquí.
Y para las páginas que no ofrezcan un search plugin para instalar, existe un addon para firefox que permite crear motores de búsquedas en casi cualquier sitio con solo elegir una opción en el menú contextual.
Buenas fiera, el código que has puesto arriba tiene un error.
<?php require_once(ABSPATH. ‘wp-config.php’); ?>
Lamentablemente, no disponemos de la definición de ABSPATH si no hemos integrado el wp-config.php, por ese motivo hemos recurrir a los puntos para encontrar el fichero.
Prueba con esto.
<?php require_once('../../../wp-config.php’); ?>
Saludos
Información adicional, incluido como añadir sugerencias de búsqueda:
http://developer.mozilla.org/es/docs/Creaci%C3%B3n_de_plugins_OpenSearch_para_Firefox
Muchas gracias, hace tiempo lo intente yo sólo pero me salia un error en el XML y pues como no me era muy necesario pues lo deje, ahora ya quedaron mis dos páginas listas.
Mil Gracias