Instalar Linguise en sitios web basados ​​en Laravel

Tabla de contenido

Requisitos técnicos

Para ejecutar el script de traducción Linguise , necesitará lo siguiente:

  • Ejecutar PHP 7+ y Laravel
  • Servidor Apache, LiteSpeed, NGINX e IIS
  • Activa la reescritura de URL en la configuración de tu servidor
  • La carpeta raíz de Laravel pública ", asegúrese de instalar Linguise dentro de esta carpeta

1. Generar la clave API

Después de conectarse a su panel Linguise primero deberá configurar un nuevo dominio y guardar su configuración para obtener la clave API.

La clave API es necesaria para activar la traducción en tu sitio web. Básicamente, la clave API comprobará qué idioma está activado en cada dominio y permitirá generar las páginas de traducción neuronal.

Copie la clave API y guárdela en su portapapeles.

Paso 2 de 2, listo. ¡Ya puedes empezar a traducir!

Luego, haciendo clic en la pestaña “Script PHP”, obtendrá las instrucciones de instalación que seguiremos aquí en detalle.

Una captura de pantalla de las instrucciones de instalación de un complemento WordPress , que muestra los pasos para instalar una prueba social en un sitio web.

2. Cargue y conecte el script de traducción Linguise

El script de traducción Linguise debe cargarse en su servidor, en la carpeta donde está instalado Laravel , se puede descargar aquí:

Después de descargar el script, descomprímalo y cárguelo en la carpeta raíz donde está instalado Laravel .

  • Asegúrate de que esté en el nivel raíz de tu Laravel (normalmente Laravel establece la raíz en la carpeta " pública " donde puedes instalar Linguise )
  • Asegúrese de que la carpeta se llame “ linguise ” (el nombre predeterminado cuando se descomprime la carpeta)
Listado de directorios de un sistema de archivos con carpetas

¿Cómo acceder a la interfaz de script Linguise ?

Después de completar la Linguise , puede acceder al panel de control visitando su sitio web con el siguiente formato de URL
linguise https://www.domain.com/linguise

Cambie la dirección de dominio según la dirección de su sitio web*
Asegúrese de que Linguise tenga los permisos de lectura y escritura adecuados*

Configurar contraseña y conexión a la base de datos

Una vez que acceda a la interfaz del script, se le presentará una pantalla de configuración donde podrá crear una contraseña y conectarse a su base de datos preferida.

Puede:

  • Establezca una contraseña que será necesaria para acceder en el futuro a esta interfaz.
  • Elija su tipo de base de datos: MySQL o SQLite, según su configuración y preferencia.

Esta configuración inicial garantiza un acceso seguro y le permite configurar el script según su entorno.

Conexión a la base de datos MySQL

Si elige MySQL, aparecerá una interfaz diferente que le solicitará los siguientes detalles de conexión de los campos de configuración de MySQL a continuación:

Asegúrese de que la información sea correcta para establecer una conexión exitosa a su base de datos MySQL. 

MySQL vs. SQLite: ¿Cuál es la diferencia?
Tanto MySQL como SQLite son sistemas de bases de datos populares que se utilizan para almacenar y gestionar datos de sitios web y aplicaciones. Sin embargo, están diseñados para diferentes casos de uso y presentan algunas diferencias clave:

CaracterísticaSQLiteMySQL
ConfiguraciónMuy fácil (requiere instalación de SQLite)Requiere configuración del servidor
AlmacenamientoFila indiaAdministrado por el servidor MySQL
RendimientoIdeal para aplicaciones a pequeña escalaMejor para sistemas grandes y de alto tráfico
Caso de usoAplicaciones locales, pruebas, sitios pequeñosAplicaciones web, comercio electrónico, sistemas empresariales

Interfaz de script Linguise : configuración para la plataforma PHP

El panel de traducción de Linguise , anteriormente disponible solo para Joomla y WordPress, ahora es compatible con PHP y otras plataformas. Esta actualización permite a los usuarios configurar fácilmente los ajustes de idioma (como las opciones de visualización, los estilos de banderas y la personalización de la apariencia) directamente desde una interfaz unificada, independientemente de su CMS o framework.

interfaz API

Los administradores pueden gestionar la configuración Linguise de forma más eficiente, con funciones consistentes como ventanas emergentes de selección de idioma, efectos de sombra y variantes de banderas específicas para cada región. El panel de control conserva su diseño intuitivo y ofrece una mayor compatibilidad con diversos entornos web.

interfaz de visualización
interfaz de apariencia
Entendemos que la configuración de URL y el selector de idioma son un poco complejos, pero ¡buenas noticias! Ofrecemos instalación gratuita

3. Configurar las URL de idioma

La URL por idioma debe configurarse en el archivo .htaccess, si tiene un “RewriteBase /” en su archivo simplemente copie después de eso todo el código siguiente:

				
					<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteRule ^linguise/linguise.php$ - [L]
  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
</IfModule>
				
			
Una captura de pantalla de una carpeta de computadora en Mac OS.
Entendemos que la configuración de URL y el selector de idioma son un poco complejos, pero ¡buenas noticias! Ofrecemos instalación gratuita

4. Activar el selector de idioma en Laravel

El selector de idioma es la ventana emergente que te permite seleccionar el idioma que deseas. Para cargarlo, deberás copiar el código que aparece al final de la configuración del sitio web (panelLinguise ).

El script debe cargarse en el encabezado de las páginas HTML gestionadas por Laravel. El selector de idioma se cargará automáticamente.

Banner de consentimiento de cookies en un sitio web

El selector de idioma se mostrará por defecto en una posición flotante en la esquina superior derecha de tu sitio web. Puedes personalizarlo como desees con CSS.

Un menú desplegable para seleccionar idiomas en un sitio web. Las opciones incluyen inglés, español, francés y más.

Nota importante sobre SEO: La cantidad de idiomas que configures tiene un gran impacto en el SEO. Al configurar los idiomas de traducción, si tienes una gran cantidad de páginas indexadas (más de 500), los motores de búsqueda pueden tardar bastante en procesarlas. Esto puede afectar tu SEO en tu idioma original. Por eso, recomendamos agregar inicialmente un máximo de 5 idiomas y, una vez indexada, añadir 3 idiomas al mes.

Configurar el selector de idioma

El selector de idiomas se puede personalizar desde el panel Linguise > Configuración > Mostrar indicadores de idioma. Cualquier modificación aquí se reflejará en el sitio web.

Una captura de pantalla que muestra un menú desplegable para seleccionar la configuración de idioma con opciones para inglés.

En el lado derecho de la pantalla, tienes la vista previa del selector de idiomas. Aquí tienes los elementos que puedes configurar:

  • 3 diseños: lado a lado, desplegable o ventana emergente
  • La posición del selector de idioma
  • El contenido del selector de idioma
  • Nombres de idiomas en inglés o lengua materna
  • Formas y tamaño de banderas
  • Colores y sombras de caja

Cargar el selector de idioma en el contenido Laravel

posición de la bandera en su lugar

Para mostrar el selector de idioma en la ubicación específica del Laravel , debes configurarlo como "In situ".
Una vez que lo hayas configurado en el Linguise , puedes agregar el código corto a continuación para incluirlo. Haz clic en el código a continuación para guardarlo en el portapapeles.

				
					<div>&#091;linguise&#093;</div>
				
			

Una vez agregado, en el frontend tendrás los nombres de las banderas y los idiomas mostrados en el área HTML donde has agregado el código.

Sistema de caché local para páginas Laravel

Como opción, puede activar un sistema de caché local que almacena las URL y su contenido multilingüe para agilizar el servicio de las páginas. La caché local ahorrará parte de la transferencia de datos entre el servidor Linguise y el servidor de su sitio web. La caché solo se utiliza cuando una página ya se ha traducido y no se ha actualizado. La caché prioritaria será la de las páginas multilingües más visitadas.

Ejemplo de código de configuración de traducción Laravel . Configuración para configurar las traducciones.

Como opción, puede definir la cantidad de caché almacenada en MB. En el siguiente ejemplo, la caché está activada y la cantidad de caché a conservar es de 500 MB:

				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Configuraciones específicas para la plataforma Laravel

En el archivo Configuration.php también tenemos una opción que permite pasar una configuración específica para el CMS o para otros sistemas. Por defecto, es automática, pero el equipo de soporte podría pedirle que la personalice para usar ajustes especiales.

Aquí está el código para agregar para Laravel , este es el nombre del CMS en minúsculas:

				
					    /** Basic configuration **/
    /*
     * Update the CMS value according to your CMS
     * Available CMS are: laravel, prestashop
     */
    public static $cms = 'laravel';
				
			

De SQLite a MySQL

Aún en Configuration.php hay una configuración para forzar el uso de MySQL en lugar de SQLite, en caso de que SQLite no esté instalado en el servidor.

En este caso, necesitarás completar la información de MySQL en esta parte del archivo Configuration.php:

				
					    /** Advanced database configuration **/
    /*
     *  In case you don't want to use Sqlite, you can use MySQL
     *  To do so, you need to fill the following variables
     *  Linguise will create the tables for you
     */
    public static $db_host = '';
    public static $db_user = '';
    public static $db_password = '';
    public static $db_name = '';
    public static $db_prefix = '';
				
			

Traducción automática en servidores Laravel + Windows IIS

Añade la línea correspondiente a tu creador de sitios web en tu archivo Web.config.
Debe configurarse antes de cualquier otra redirección, especialmente la redirección a tu archivo principal de PHP:

				
					<rule name="Linguise" stopProcessing="true">
<match url="^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
            <action type="Rewrite" url="linguise/linguise.php?linguise_language={R:1}&amp;original_url={R:2}" appendQueryString="true" />
</rule>
				
			

Traducción automática en servidores Laravel + NGINX

Agregue la línea correspondiente a su CMS en su bloque de configuración del servidor NGINX.
Debe configurarse antes de cualquier otra redirección, especialmente la redirección en el archivo principal de PHP.
				
					rewrite ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;