Soporte » WordPress Avanzado » inhabilitar la traducción al inglés cuando el post no esté traducido a inglés

  • Hola,
    me gustaría saber donde podría poner un código para que cuando el artículo que quiero ver no esté traducido al inglés, en el header, en vez de poner ES|EN|CA (Español, Inglés y Catalán) ponga ES|CA. Es decir, que sólo me de la posibilidad de traducirlo a los idiomas en los que esté traducido el post.

    Ahora se me ocurre hacerlo con un condicional (if (empty(el contenido del post){no muestres el EN})

    Utilizo un plugin para el idioma, Qtranslate.
    El tema que utilizo es fevr.

    No sé donde encontrar el lugar donde hacerlo.. primero pensé en header.php. Después he encontrado el sitio donde se pinta la información del post (post.php), pero el mensaje que me aparece cuando en el front le das a «EN» y no está traducido el post, que es:»Sorry, this entry is only available in European Spanish.», me aparece en el archivo qtx_configuration.php, que es el de mi plugin de idiomas.

    Estoy algo perdida,

    Muchas gracias de antemano!

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • Moderador LGrusin

    (@lgrusin)

    Yo me pensaría cambiar de plugin. qTranslate X https://es.wordpress.org/plugins/qtranslate-x/ lleva mucho tiempo sin actualizar. Es probable que no funcione bien, sobre todo cuando actualices a la versión 4.9.1 de WordPress

    Un saludo

    Iniciador del debate isabelgalvez

    (@isabelgalvez)

    Y los post traducidos que tenía se perderán?
    Gracias!

    Iniciador del debate isabelgalvez

    (@isabelgalvez)

    Cuál me recomiendas?

    Moderador LGrusin

    (@lgrusin)

    Pues no te sabría decir, https://es.wordpress.org/plugins/polylang/ va muy bien. Estudia todo bien en los foros del plugin antes de hacer nada, igual te dicen como hacer el cambio.

    Un saludo

    Iniciador del debate isabelgalvez

    (@isabelgalvez)

    Hola!
    continuando con el hilo de la conversación:
    me cambié de plugin a WPML (de momento).

    Pero bueno, el caso es que el menú de idiomas de mi página lo estoy haciendo manualmente.
    Los idiomas son español (por defecto), inglés y catalán.
    Todos los posts están traducidos al catalán, pero sólo algunos al inglés.
    Quiero que cuando un post no esté traducido al inglés no me salga ese idioma en el menú (sólo saldría ES|CA)

    He visto una función del codex de wordpress que es post_exists().

    if ( post_exists( $title ) == 0 ) {
        **YOUR_CODE_HERE**
    }

    Podría ir por ahí la cosa? Mi pregunta es si puedo preguntarle por el post con la url, no con el título.

    Gracias

    Iniciador del debate isabelgalvez

    (@isabelgalvez)

    He encontrado la función de wpml icl_object_id(). Pero no sé cómo preguntar si está traducido al INGLÉS.
    Por si ayuda algo.
    Gracias!

    Moderador LGrusin

    (@lgrusin)

    El plugin es de pago y tiene buena documentación. Puedes usar los campos personalizados para marcar los posts o páginas que no tengan traducción.

    https://wpml.org/documentation/translating-your-contents/#translating-custom-fields

    Un saludo

Viendo 7 respuestas - de la 1 a la 7 (de un total de 7)
  • El debate ‘inhabilitar la traducción al inglés cuando el post no esté traducido a inglés’ está cerrado a nuevas respuestas.