Проблема с навигацией qTranslate-x в переключателе языка

Я хочу отобразить меню перевода без флагов и без заголовков. Что-то вроде этого:

EN | IT

Когда я нажимаю «EN», URL-адрес переходит на английскую версию, а когда я нажимаю «IT», переходит на итальянскую версию.

Я пробую все, но нет решения.


person barabba58    schedule 28.04.2017    source источник
comment
Вам не нужно менять язык постоянной ссылки, верно?   -  person Purvik Dhorajiya    schedule 28.04.2017
comment
Вы можете сделать это, используя файл cookie в php. Обратитесь к этому сообщению: webmasters.stackexchange.com/questions/42911/   -  person heero    schedule 28.04.2017


Ответы (2)


Вы можете использовать функции qtrans_getLanguage().

Целевой язык в шаблоне темы:

if(qtrans_getLanguage() == "en"){ 
    // Enter YOUR ENGLISH LANGUAGE CODE    
}elseif(qtrans_getLanguage() == "it"){ 
    // ENTER YOUR ITALIAN LANGUAGE CODE    
}

Разные меню для разных языков

<?php 
if ( function_exists( 'register_nav_menus' ) ) {
    register_nav_menus(
        array(
          'menu-header-en' =&gt; 'Main Menu EN',
          'menu-header-it' =&gt; 'Main Menu IT',
        )
    );
} ?> 

// For menu calling
<?php wp_nav_menu( array(  'theme_location' => 'menu-header-' . qtrans_getLanguage() , 'sort_column' => 'menu_order', 'container_class' => 'menu-header' ) ); ?>
person Purvik Dhorajiya    schedule 28.04.2017

Если вы хотите, чтобы на экране мобильного устройства или на рабочем столе отображался только один флаг, используйте этот код.

<?php   
if (qtranxf_getLanguage() == 'ro') {
  echo the_widget('qTranslateXWidget', array('type' => 'image', 'hide-title' => true) );
  print '<style> .qtranxs_image_ro{display:none;}</style>'; 
} elseif (qtranxf_getLanguage() == 'ru') {
   echo the_widget('qTranslateXWidget', array('type' => 'image', 'hide-title' => true) );
   print '<style>.qtranxs_image_ru{display:none;}</style>';
  }

?>
person Promuzic    schedule 01.01.2020