Hello,

I have problem with multilanguage Title in Framework Theme.
This code can't select right language:

function framework_preprocess_page(&$vars) {
  $vars['tabs2'] = menu_secondary_local_tasks();
  // Titles are ignored by content type when they are not desired in the design.
  $vars['original_title'] = $vars['title'];
  if (!empty($vars['node']) && in_array($vars['node']->type, array('services'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs') // vychozi jazyk je cestina, tedy kdyz lang neni nastavene
      {$vars['title'] = 'Přehled našich služeb';}
    else if ($language->language == 'en')
      {$vars['title'] = 'Our services';}
  }
  else if (!empty($vars['node']) && in_array($vars['node']->type, array('product'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs')
      {$vars['title'] = 'Přehled nabízených produktů';}
    else if ($language->language == 'en')
      {$vars['title'] = 'Overview of the offered products';}
  }
  else if (!empty($vars['node']) && in_array($vars['node']->type, array('news'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs')
      {$vars['title'] = 'Aktuality';}
    else if ($language->language == 'en')
      {$vars['title'] = 'News';}
  }
}

Can you any help me?
Thank's
Jiri

Comments

bastaj’s picture

I have resolve my problem: miss declaration of global variable $language

function framework_preprocess_page(&$vars) {
  $vars['tabs2'] = menu_secondary_local_tasks();
  // Titles are ignored by content type when they are not desired in the design.
 global $language;
$vars['original_title'] = $vars['title'];
  if (!empty($vars['node']) && in_array($vars['node']->type, array('services'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs') // vychozi jazyk je cestina, tedy kdyz lang neni nastavene
      {$vars['title'] = 'Přehled našich služeb';}
    else if ($language->language == 'en')
      {$vars['title'] = 'Our services';}
  }
  else if (!empty($vars['node']) && in_array($vars['node']->type, array('product'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs')
      {$vars['title'] = 'Přehled nabízených produktů';}
    else if ($language->language == 'en')
      {$vars['title'] = 'Overview of the offered products';}
  }
  else if (!empty($vars['node']) && in_array($vars['node']->type, array('news'))) {
    if (!isset($language) or empty($language) or $language->language == 'cs')
      {$vars['title'] = 'Aktuality';}
    else if ($language->language == 'en')
      {$vars['title'] = 'News';}
  }
}