Solucionar en Qtranslate el enlace de inicio al idioma correspondiente

15
725

Nota sobre como solucionar el problema del enlace de la Home (inicio) de destino en un idioma que no es el de defecto.

Si tenemos un menú creado en WordPress en el que un <li> es un enlace a la página de inicio puede pasar que si nos encontramos ubicados en nuestra web en un idioma que no es de defecto y lo clicamos nos direccione a la página de inicio del idioma que tenemos por defecto, es decir, si nuestro idioma por defecto es el castellano y hemos traducido nuestro sitio al catalán, en caso de que un visitante esté en la página en la versión /ca y quiera volver a la página de inicio clicando en el enlace del menú ( <a href=”http://misitio.es/ca”>Inici</a> ), automáticamente Qtranslate ubicará el enlace a la home de castellano ( http://misitio.es ).

Para solucionar lo que en principio parece un problema del pluguin deberemos añadir estas lineas de código en el archivo qtranslate_hooks.php


WEBINAR GRATIS


Google AdWords // MOBILE 2018

Este webinar está totalmente especializado en las nuevas tendencias, buenas prácticas y herramientas en la publicidad del canal publicitario de Google para este año 2018.


Pon tus datos y te informaré de las distintas opciones de fechas para que puedas realizar el Webinar.

[php]
add_filter(‘walker_nav_menu_start_el’, ‘qtrans_in_nav_el’, 10, 4);
function qtrans_in_nav_el($item_output, $item, $depth, $args){
$attributes = ! empty( $item->attr_title ) ? ‘ title="’ . esc_attr( $item->attr_title ) .’"’ : ”;
$attributes .= ! empty( $item->target ) ? ‘ target="’ . esc_attr( $item->target ) .’"’ : ”;
$attributes .= ! empty( $item->xfn ) ? ‘ rel="’ . esc_attr( $item->xfn ) .’"’ : ”;

// Determine integration with qTranslate Plugin
if (function_exists(‘qtrans_convertURL’)) {
$attributes .= ! empty( $item->url ) ? ‘ href="’ . qtrans_convertURL(esc_attr( $item->url )) .’"’ : ”;
} else {
$attributes .= ! empty( $item->url ) ? ‘ href="’ . esc_attr( $item->url ) .’"’ : ”;
}

$item_output = $args->before;
$item_output .= ‘<a’. $attributes .’>’;
$item_output .= $args->link_before . apply_filters( ‘the_title’, $item->title, $item->ID ) . $args->link_after;
$item_output .= ‘</a>’;
$item_output .= $args->after;

return $item_output;
}
[/php]

Esto funciona con WordPress 3.5.2 y Qtranslate 2.5.34

Fuente del recurso: ContenidosV