Mejorando el buscador de WordPress (I)

El buscador que trae integrado WordPress sólo te permite realizar un tipo de búsqueda, búsquedas en entradas y páginas. Además si no intervenimos el código o instalamos algún plugin, los resultados se mostrarán ordenados cronológicamente. Está bien, pero no se parece a lo que nos ha acostumbrado Google, en las próximas entradas vamos a explicar basándonos en un caso real cómo mejorar el buscador de WordPress para que busque en campos personalizados y entradas personalizadas.

En resumen, vamos a hacer que el buscador de WordPress rastree resultados en “posts types” y “custom fields“.Para ello necesitaremos modificar algunas líneas de código en el archivo search.php y además instalar algunos plugins.

Estos son los plugins que necesitaremos y una breve explicación de las funcionalidades que ampliarán en nuestro WordPress:

relevanssi-plugin-buscador-wordpress

Relevansi: plugin que nos va a permitir indexar etiquetas, campos personalizados, entradas distintas a las que trae por defecto WordPress y además con la posibilidad de mostrar los resultados por relevancia en lugar de por fecha de publicación. Podéis descargarlo desde aquí.

advanced-custom-fields-campos-personalizados-plugin-wordpress

Advanced Custom Fields (ACF): este plugin nos permite crear campos personalizados desde el panel de administración de WordPress sin necesidad de generarlos vía functions.php. Los campos personalizados son campos adicionales que nos facilitan la inserción de contenido relevante asociado a esa entrada, por ejemplo añadir un campo “Localidad” a nuestras entradas, y desde éstas asignarle un valor a este campo personalizado. Más información y link de descarga del plugin aquí.

Una vez tengamos descargos y activados estos dos plugins lo que haremos es configurarlos. Empezaremos creando algunos campos personalizados, en el ACF, para ello desde el panel de administración de WordPress vamos a la pestaña de “Custom Fields” y añadimos un grupo de campos nuevo.

En este ejemplo, vamos a crear campos personalizados relacionados con Inmuebles, y a este grupo de campos personalizados lo llamaremos Opciones de búsqueda. Este será el nombre que aparecerá como título del metabox que contendrá nuestros campos personalizados.

ACF está traducido al castellano así que ir completando las distintas opciones que nos van apareciendo es muy sencillo e intuitivo. Nosotros vamos a crear un campo personalizado llamado “Inmuebles”, con el objetivo de mostrar una serie de opciones cerradas en formato de radio buttons.

acf-campo-personalizado

Una vez hayamos terminado de añadir campos personalizados, la siguiente opción, “Location”, nos permitirá definir en qué tipo de página queremos que aparezca esa caja con los campos que acabamos de crear. En este ejemplo vamos a escoger que nuestros campos personalizados aparezcan en las entradas de tipo propiedad.

acf-location

Si lo hemos configurado todo bien, en nuestros posts tipo “propiedad”, que es dónde hemos dicho antes que queremos que aparezca nuestro grupo de campos personalizados, deberá de aparecer una metabox con los campos que hemos creado bajo el título “opciones de búsqueda”.

acf-metabox

En la próxima entrada recorremos los pasos necesarios para hacer que los valores de estos campos personalizados sean rastreables por el buscador de WordPress.