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
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.

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

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)

¿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ística | SQLite | MySQL |
|---|---|---|
| Configuración | Muy fácil (requiere instalación de SQLite) | Requiere configuración del servidor |
| Almacenamiento | Fila india | Administrado por el servidor MySQL |
| Rendimiento | Ideal para aplicaciones a pequeña escala | Mejor para sistemas grandes y de alto tráfico |
| Caso de uso | Aplicaciones locales, pruebas, sitios pequeños | Aplicaciones 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.

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.


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:
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]

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.

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.

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.

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

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.
[linguise]
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.

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:
Traducción automática en servidores Laravel + NGINX
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;