Le guide scritte su Ethernaly.it sono a scopo didattico/informativo. Ethernaly.it e l' autore non sono responsabili dell'utilizzo della guida/materiali fatto da parte degli utenti.
WP Tips Wordpress Tips - Ethernaly.it

Published on giugno 20th, 2013 | by Ethernaly

0

WordPress qTranslate e i sottomenù (Sub menù)

Problemi con qTranslate e i submenù?

Quando si crea un sito internet con WordPress e si ha l’esigenza di impostare più di una lingua, uno dei plugin più utilizzati è senza dubbio qTranslate. Purtroppo però questo plugin non è esente da problemi e delle volte, con alcuni temi, non riesce ad aggiungere nei link dei sotto menù (sub menù) la desinenza di lingua. Ovvero, cliccando su un link del submenù visualizzerete la pagina in lingua principale (quindi la variabile di lingua non sarà “mantenuta”).

Come risolvere questo problema con qTranslate?

La soluzione arriva direttamente dal forum ufficiale del plugin, dove vengono suggeriti addirittura più di un metodo. (a dire il vero molto simili tra loro)

Personalmente uso quello che riporterò qui di seguito, e consiste nell’aggiungere nel file functions.php questa porzione di codice (filtro):

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 .= '';
$item_output .= $args->after;

return $item_output;
}

Se avete bisogno di ulteriori informazioni non esitate a scrivere un commento di seguito! :D

Tags: , , , ,


Offri una birra all'autore

Clicca sul pulsante "Donazione" ed offri una birra o un po' di sushi all'autore!


About the Author

Ethernaly informatico per passione e lavoro, si interessa alle nuove tecnologie e al mondo underground legato all'informatica; amante del dobermann (attualmente ne ha 3) e della buona cucina, è - in ogni campo di interesse - mosso da grande curiosità.



Prima di commentare:

Prima di commentare leggere il nostro Disclaimer


Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 
Back to Top ↑