Buscador Multivista
Prontus permite la creación de artículos multi-lenguaje. Sin embargo, la búsqueda de dichos artículos en dicho idioma no es trivial. La búsqueda de artículos en Prontus utiliza un sistema de indexación que incrementalmente agrega los últimos artículos a una base de datos, la cual es accedida por el buscador. Para más información al respecto, se recomienda ver la referencia del buscador. Por defecto el buscador sólo funciona con el idioma nativo. Para permitir la búsqueda en múltiples idiomas, se debe crear un Prontus "dummy" que sólo realice búsquedas.
Última modificación: Domingo 29 de agosto de 2021
Para implementar esta funcionalidad deberás instalar dos Prontus lado a lado:
- /prontus_test: La instancia principal
- /search_english: El Prontus "dummy", que realiza la búsqueda en inglés en este ejemplo.
Supondremos que ambas instancias Prontus están en la carpeta /var/www/proyecto_test
.
Algo importante en esta implementación es crear en los FIDs del Prontus principal los campos necesarios para almacenar la información en el o los idiomas distintos. Esto es parte de la implementación de un Prontus con multivistas por internacionalización, de todos modos: cada campo de texto debería tener su equivalente en cada idioma. En este ejemplo tendríamos campos "txt_titular_en", "txt_bajada_en", "vtxt_cuerpo_en", etc.
Para crear el nuevo Prontus se puede utilizar el Wizard de Prontus, creando un proyecto vacío. Respecto a su contenido, sólo se usará el buscador. Lo importante del proceso es el indexador de contenido para su búsqueda.
Una vez creado el Prontus Dummy se debe configurar para que indexe los artículos en el nuevo idioma, en la base de datos principal. Se debe modificar el archivo "search_english/cpan/buscador_prontus.cfg
" con los siguientes parámetros.
# Directorios Prontus a Indexar (i = 1, 2, 3,...) aparte del directorio de este Prontus. PRONTUS_DIR_1 = /prontus_test #Directorio del Prontus principal # Tipos de FID que seran consideradas validos para ser indexados. FIDS = fid_noticia.html fid_general.html ... #Todos los fids que deben ser indexados por el sistema separadas por un espacio # Variable Prontus que sera considerada el titular. TITLEVAR = txt_titular_en # Variables Prontus sobre las que se buscara. TEXTVARS = bajada_en VTXT_CUERPO_en
Ahora se debe forzar la indexación en el Prontus "dummy". Esto se puede hacer de dos maneras:
- Usando el CPAN
Se debe ingresar al CPAN del Prontus "dummy" con los datos por defecto. Dentro, se debe ingresar a "Administración->Buscador" y presionar el botón "Ejecutar el Proceso". Esto forzará el proceso de indexación en "search_english". Para verificar que el proceso se realizó bien, en la sección "Administración->Base de Datos->Listar Tablas" debe listar tablas creadas y número de registros en cada una. Si no aparecen datos en el dump es porque la indexación no fue correcta.</lì> - Por consola
Para forzar el proceso de indexación se debe ingresar a la máquina donde se encuentran los Prontus y ejecutar con el usuario "www-data" el siguiente comando
www-data@lab:# /usr/bin/nice /usr/bin/perl /var/www/proyecto-test/cgi-cpn/prontus_indexer.cgi /var/www/proyecto-test/search_english 7777
Para probar que el método funcionó puede revisar la base de datos y verificar que las tablas y registros existen.
Para utilizar el nuevo buscador, debe configurar las opciones de búsqueda en el formulario de búsqueda.
Respecto a las variables de búsqueda, debes poner énfasis en las siguientes variables:
<input type="hidden" name="search_prontus" value="search_english"> <input type="hidden" name="search_tmp" value="search.html"> <input type="hidden" name="search_idx" value="prontus_test">
Para más información respecto a las variables de búsqueda, revisa el artículo Configuración del buscador.
Artículos Relacionados
- Configuración del buscador Prontus: buscador_prontus.cfg Este archivo de configuración contiene las variables que manejan el funcionamiento del buscador...
- Cómo implementar un buscador Este tutorial te explica cómo implementar un buscador para indexar y mostrar el contenido de los...
- Buscador El buscador Prontus es un indexador y buscador de texto completo (full text) integrado a Prontus,...
Conceptos Básicos
¿Qué es Prontus?
Estructura de directorios
Glosario
Navegadores soportados
Tutoriales
Instalación de Prontus CMS
Implementar un nuevo sitio en Prontus
Cómo crear un FID
Cómo crear una plantilla de artículo
Cómo crear una plantilla de portada
Cómo crear plantillas de formulario
Cómo implementar un formulario
Cómo implementar un buscador
Cómo implementar un buscador Elasticsearch
Cómo crear una plantilla de taxonomía
Cómo crear plantillas de tags
Cómo crear una plantilla de listado
Cómo crear una plantilla de tags jerárquicos
Implementar carga de videos en Prontus
Integración de Redes Sociales
Instalación y Configuración
Requerimientos
Configuración del servidor
Base de datos
Asegurar la plataforma
Instalación con Wizard Prontus
Ajustes post-instalación
Archivos de configuración de Prontus
Friendly URLs
Friendly URLs para imágenes
SSI en Prontus
Logs de Eventos
Ejecutar procesos periódicamente con cron
Debugging
Plantillas
Plantillas de FID
Plantillas de artículo
Plantillas de portada
Plantillas de taxonomía
Plantillas de artículos relacionados
Plantillas de tags
Plantillas de listado
Plantillas de tags jerárquicos
Plantillas de mapa de taxonomía
Plantillas de mapa de tags
Marcas
Tipos de marcas
Diccionario de marcas
Marcas para texto
Marcas de lógica
Marcas de despliegue
Marca Menú y Panel
Parsing de marcas en formularios Prontus
Funcionalidades
Funcionalidades SEO en Prontus CMS
Multivistas
Galería de Imágenes
Buscador Multivista
Buscador
Buscador Elasticsearch
Calendarios
Imprimir artículos
Posting de contenidos
Plugins
Post-procesos
Prontus functions
Implementar copias de seguridad automáticas con Dropbox
Implementar múltiples ediciones
Regeneración masiva de artículos via línea de comandos