Instale Linguise en sitios web basados ​​en Laravel

Tabla de contenido

Requerimientos técnicos

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

  • Ejecute PHP 7+ y Laravel
  • Apache, LiteSpeed, NGINX, servidor 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 control Linguise , primero deberá configurar un nuevo dominio y guardar su configuración para obtener la clave API.

La clave API es lo que se requiere para activar la traducción en su sitio web. Básicamente, la clave API verificará qué idioma está activado en qué dominio y permitirá que se generen las páginas de traducción neuronal.

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

Imagen del proceso de instalación de la tecla API Lingui.SE. Captura de pantalla de la tecla API al final de la instalación.

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

Una captura de pantalla de la interfaz de script de instalación de LinguiSE .

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

Una vez descargado el script, descomprímalo y cárguelo en la carpeta raíz donde está instalado Laravel .

  • Asegúrese de que esté en el nivel raíz de su instalación Laravel Laravel establece la raíz en la carpeta " pública " donde puede instalar Linguise allí)
  • Asegúrese de que la carpeta se llame " linguise " (el nombre predeterminado cuando se descomprime la carpeta)
Una captura de pantalla de una carpeta de lista de archivos en la plataforma Linguise . Organización de archivos y carpetas.

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

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

Cambie la dirección de dominio de acuerdo con la dirección de su sitio web*
Asegúrese de que Linguise tenga un permiso de lectura y escritura adecuado*

Configuración de contraseña y conexión de base de datos

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

Puede:

  • Establezca una contraseña, que se requerirá para el acceso futuro a esta interfaz.
  • Elija su tipo de base de datos, ya sea MySQL o SQLite, dependiendo de su configuración y preferencia.

Esta configuración inicial garantiza un acceso seguro y le permite configurar el script de acuerdo con su entorno.

Conexión de la base de datos MySQL

Si elige MySQL, aparecerá una interfaz diferente solicitando 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 con su base de datos MySQL. 

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

CaracterísticaSqliteMysql
ConfiguraciónMuy fácil (se requiere instalación de SQLite)Requiere la configuración del servidor
AlmacenamientoFila indiaGestionado por MySQL Server
ActuaciónIdeal 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 tablero de traducción de Linguise , anteriormente disponible solo para Joomla y WordPress, ahora extiende el soporte a PHP y plataformas adicionales. Esta actualización permite a los usuarios configurar sin problemas la configuración del idioma, como opciones de visualización, estilos de bandera y personalización de apariencia, directamente desde una interfaz unificada, independientemente de su CMS o marco.

interfaz API

Los administradores pueden administrar la configuración Linguise de manera más eficiente, con características consistentes como ventanas emergentes de selección de idiomas, efectos de sombra y variantes de opciones de bandera específicas de la región. El tablero conserva su diseño fácil de usar al tiempo que ofrece una compatibilidad más amplia para diversos entornos web.

Pantalla interfaz
interfaz de apariencia
ENTENDEMOS QUE LA CONFIGURACIÓN DE URL Y EL CAMBIADOR DE IDIOMA SON UN POCO TÉCNICOS DE CONFIGURAR; ¡PERO BUENAS NOTICIAS! OFRECEMOS INSTALACIÓN GRATUITA

3. Configure las URL del 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 siguiente código:

				
					<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 archivos OpenCart .
ENTENDEMOS QUE LA CONFIGURACIÓN DE URL Y EL CAMBIADOR DE IDIOMA SON UN POCO TÉCNICOS DE CONFIGURAR; ¡PERO BUENAS NOTICIAS! OFRECEMOS INSTALACIÓN GRATUITA

4. Activa el selector de idiomas en Laravel .

El selector de idioma es la bandera emergente para seleccionar el idioma que desea. Para cargarlo, deberá copiar el código proporcionado al final de la configuración del sitio web (panel deLinguise ).

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

Complemento de conmutador de idiomas para una fácil traducción

El selector de idiomas se mostrará de forma predeterminada en una posición flotante superior derecha en su sitio web. Puede personalizarlo como desee con CSS.

Complemento de conmutador de idiomas para una fácil traducción

Nota importante de SEO: la cantidad de idiomas que configura tiene un gran impacto en el SEO. Cuando configura sus idiomas de traducción, si tiene una gran cantidad de páginas indexadas (> 500), el motor de búsqueda puede tardar mucho tiempo en procesarlas. Puede afectar su SEO en su idioma original. Es por eso que recomendamos agregar al principio un máximo de 5 idiomas, luego cuando esté indexado, puede agregar idiomas en un lote de 3 por mes.

Configurar el selector de idioma

El conmutador de idioma se puede personalizar desde el panel de control Linguise > Configuración > Visualización de banderas de idioma. Cada modificación aquí se reflejará en el sitio web.

Una barra de menú de sitio web con opción de conmutador de idiomas. Función de sitio web multilingüe.

En el lado derecho de la pantalla tienes la vista previa del selector de idioma. Estos son los elementos que puede configurar:

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

Cargue el selector de idiomas en el contenido Laravel

posición-de-la-bandera-en-su-lugar

Para mostrar el selector de idioma en un lugar específico, en el Laravel , debes establecer la posición como "En su lugar".
Una vez que haya establecido la posición en el Linguise , puede agregar el código corto a continuación para incluirlo. Haga clic en el código a continuación para colocarlo en su portapapeles.

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

Una vez agregado, en la interfaz tendrá la bandera y los nombres del idioma mostrados en el área HTML en la que agregó 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 relacionado para servir las páginas más rápido. El caché local guardará algunas transferencias de datos entre el servidor de Linguise y el servidor de su sitio web. El caché se usa solo cuando una página ya se ha traducido y no se ha actualizado. El caché mantenido en prioridad será el caché de las páginas multilingües más vistas.

Proceso de activación de caché

Como opción, puede definir la cantidad de caché almacenada en MB. En el siguiente ejemplo, el caché está activado y la cantidad de caché a conservar es 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 configuración que permite pasar alguna configuración específica para el CMS o no. De forma predeterminada, es automático, pero el equipo de soporte puede pedirle que lo personalice para usar algunas configuraciones 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, deberá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

Agregue la línea correspondiente al creador de su sitio web en su archivo Web.config.
Debe configurarse antes de cualquier otra redirección, especialmente la redirección a su archivo principal 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 el bloque de configuración de su servidor NGINX.
Debe configurarse antes de cualquier otra redirección, especialmente la redirección en su archivo principal 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;