Widget conmutador de idioma Polylang

En informática un widget es un pequeño programa, que te da acceso a funciones que usas frecuentemente. En el caso de Wordpress, disponemos de una sección en la que nos ofrece una serie de widgets ya hechos, e incluso la posibilidad de crear los nuestros, en códigos HTML o Scripts. Haciendo alguna pequeña modificación en Wordpress, podremos codificar estos widgets, también en PHP, lo veremos más adelante.

Ahora vamos a añadir uno predeterminado de Wordpress, en concreto del plugin Polylang y es el conmutador de idioma. Es un menú para poder seleccionar el idioma en que se desea visualizar la página.

Para conseguir esto, accederemos al panel de administración, y en el menú lateral, a la sección de Apariencia->Widgets. En la parte de la derecha, tendremos las zonas donde podemos añadir widgets. En la izquierda, todos los widgets disponibles. Buscamos el “conmutador de idioma” y lo arrastramos a la zona de widgets donde queremos que se muestre. Posteriormente lo configuramos un poco.

Las opciones, respecto a la apariencia gráfica del widget, son limitadas. A continuación, vamos a ver una manera de personalizar la apariencia del conmutador.Vamos a colocar unas imágenes personalizadas, en cada opción de idioma. En mi caso ofrezco 2 idiomas: Español y Euskera. Describo los pasos a continuación:

  • En la sección de widgets, vamos al widget Conmutador de idioma, en la zona de widgets en la cula lo hemos posicionado. De todas las opciones de configuración que nos permite, vamos a seleccionar sólo la opción de Muestra las banderas.
  • Ahora vamos a sustituir la imagen de la bandera que usa el polylang, por la imagen personalizada que queremos poner. La ruta de la carpeta donde guarda las imágenes de las banderas es: wp-content/plugins/polylang/flags. Para el español, sustituimos la imagen de es_ES.png por nuestra imagen que se deberá llamar igual. Para el euskera, no existe imagen predeterminada, con lo que la imagen que movemos a esa carpeta se debe llamar, como el nombre de la Región que le hemos puesto al idioma a la hora de añadirlo en ajustes.
  • Por último, si quiero que las imágenes aparezcan en horizontal, añadiremos unas líneas en la hoja de estilos:

#polylang-2 ul li.lang-item{

display: inline;
margin-left: 20px;
}

 

 

16 thoughts on “Widget conmutador de idioma Polylang

  1. Jesús González Fernández Reply

    Hola,

    Sé que esta entrada es antigua, no sé si leerás mi comentario o si me podrás contestar, pero te dejo mi duda por si tú o algún otro usuario me pudiera ayudar.

    He instalado este plugin y me ha sido muy útil, pero me gustaría hacer una modificación estética y es poder añadirle una flecha (triángulo invertido) que indique que es un menú desplegable, pues puede dar lugar a confusión y parece que simplemente es una bandera puesta ahí.

    No sé si me he explicado bien, espero que me puedas ayudar.

    Muchas gracias

    • admin Post authorReply

      Hola Jesús,
      Es un placer contestar los comentarios siempre que puedo.
      Para hacer modificaciones estéticas, debe ser a través de la CSS, por ejemplo para poner la flecha al lado de la bandera, lo primero sería subir a tu Wordpress, la imagen que quieres utilizar a la biblioteca y luego en la CCS del tema que usas ( sería conveniente siempre haber hecho un tema hijo, tengo alguna entrada en el blog al respecto), podrías poner esto:

      ul li.lang-item{
      background:url(http://pruebas.tieneblog.net/wp-content/uploads/2016/09/arrow-32.png) no-repeat;
      padding-left:20px;
      }

      Con ese selector te aseguras acceder a las banderas, poner la imagen que has subido de fondo y mover la bandera a la izquierda para que no solape la bandera.

      Espero que te sirva.

  2. Adrian Reply

    Hola muy buenas,

    Espero puedas ayudar justo sobre este tema; el conmutador de idiomas de Polylang.

    Añadiendo el widget conmutador idiomas de Polylang al espacio right sidebar area o left sidebar area, no surje ningun efecto, no aparece ningún conmutador cuando guardo y refresco la web. Solo me aparece el conmutador cuando lo incluyo en apariencia>menus>estructura de menu y de esta forma aparece en el menu como una pagina más, quedando poco estético para mi gusto.

    • admin Post authorReply

      Buenos días Adrian,
      puede ser que tu página de inicio no muestre ninguna zona de widgets, quizás te lo este mostrando en cualquier página o en la de entradas. De todas maneras, tienes también la opción de personalizar los links en el menú, a los diferentes lenguajes que ofreces, mediante la CSS, como describo en esta entrada. Espero haberte ayudado.Un saludo

  3. Oscar Roger Reply

    Hola Raúl, estoy mirando tu web para encontrar una respuesta alo que me pasa però no veo la solución. Acudo a ti porque pareces una eminencia en polylang.

    A ver si me puedes ayudar porque me estoy volviendo loco, jeje.
    Tengo el plugin instalado en la web de un amigo y funcionan todas las páginas y menús, però mi problema es que cuando clico la bandera de inglaterra, la pàgina que se abre no corresponde con la que debería.

    http://www.paginadeejemplo.com/en/home (ésta debería ser la que se abriera)
    http://www.paginadeejemplo.com/en (ésta es la que se abre)

    Claro, en el segundo caso sale un “nothing found”. He intentado cambiar la url manualment però no me deja, incluso en “ajustes” de polylang, en “modificaciones de url” existe unaq casilla para cambiarlo, però entonces me sale un 404 y la misma url.
    ¿Sabrías decirme si hay algun paso que he olvidado, o algo que pueda estar mal?

    • admin Post authorReply

      Buenas Oscar,

      prueba a marcar en los ajustes del plugin, en la parte de Modificaciones URL, estas 2 opciones:
      1.El idioma se establece por el nombre de directorio en los enlaces permanentes personalizados.
      2.Eliminar /idioma/ en los enlaces permanentes personalizados.

  4. Eric Reply

    Saludos me podrías decir qué código debo introducir y en qué archivo para poner el selector de idioma a la derecha? (solo el selector de idioma el resto de elementos del menú a la izquierda).
    Gracias.

    • admin Post authorReply

      Buenas Eric,

      El tema sería hacer flotar a la derecha el selector de idiomas y la izquierda el menú, pero eso no creo que sea posible, porque todos los elementos del menu son li que van dentro de una ul, por lo que todos flotan al mismo lado.
      Se me ocurre crear una zona de widget, explico en es este post como hacerlo Crear área de widget
      responsive
      . Meter en esta zona el conmutador de idiomas y con CSS, posicionarlo donde quieras.
      Ya me contarás..

  5. ANDER ZELAIA MOIUA Reply

    Buenas tardes Raúl,

    Tengo un problema con polylang. He definido 2 idiomas, español y vasco, y quiero que el principal sea el vasco pero no hay manera, cuando pongo la dirección de la pagina web siempre me aparece en español por defecto.

    ¿cómo puedo cambiar esto?

    Mil gracias!!!

    • admin Post authorReply

      Buenas Ander,

      Lo primero es Establecer el idioma predeterminado, en este link explican genial como hacerlo guia-polylang-web-multilenguaje-wordpress. Y luego en ajustes hay una opción que dice: “Detectar el idioma del navegador”, esta habría que desactivarla. Así debería de funcionar bien.
      Me cuentas, un saludo, Raúl.

  6. carlos Reply

    Hola Raúl,

    Gracias por tu ayuda de ante mano. Tu blog me ha ayudado en muchas ocasiones.
    Estoy configurando el tema por defecto twenty seventeen, y no encuentro la manera de poner el selector de idiomas en la parte superior derecha de la web. Sólo me deja en el menu superior y me gustaría poderlo tener fuera del menú. Es posible? Gracias

    • admin Post authorReply

      Buenas Carlos,

      un placer que las publicaciones sean de ayuda. En principio, para meter el conmutador de idiomas de Polylang, Wordpress, sólo te ofrece los menús y las zonas de widgets. Si quieres ubicarlo fuera de estas zonas, tienes que crear tu propia zona de widgets y ubicarla en el lugar deseado. Explico aquí como hacerlo http://raulperez.tieneblog.net/crear-area-de-widget-responsive/.

      Un saludo.

  7. Wilson Reply

    Hola que tal soy nuevo, en esto. Tengo un problema instale polylang en wordpress 4.8 mi problema es q no me aparece el conmutador de idiomas y en su caso me aparece, Language Switcher. He visto que a varias le aparece es conmutador he incluso en una web q diseñe si aparece para colocarlo en el menú. Porque en esta nueva web que estoy diseñando no, me aparece.

    • admin Post authorReply

      Buenas Wilson,
      para insertar el conmutador de idiomas, tienes 2 maneras: a través del widget que te ofrece polylang, lo tendrás disponible en Apariencia-> Widgets o a través del menú, lo tendrás en Apariencia -> Menus,
      ojo¡ no aparece por defecto. Hay que desplegar las Opciones de pantalla y marcar la checkbox correspondiente para que aparezca.

  8. niña pastori Reply

    Hola,
    Tengo un problema con Polylang, y es que tengo dos idiomas uno Tailandes y otro español, pero cuando pincho en el tailandes no me redirecciona a la homepage traducida al Tailandes, aparece en lensaje “page not found” sin embargo en el menu sale la pagina traducidad y si pincho en la pagina HOME (traducida al thai) desde el menus si funciona.

    Quisiera que cuando cambio de idioma pinchando al thai, evidentemente me redireccione a la home page en Tailandes…

    Puedes ayudarme?

    Muchas gracias por todo

    Un saludo

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *