Change language bar's active language

 If you want your site's language bar's first item to be the active one change lines on locale.module:

  1.  
  2.  
  3. function locale_block($op = 'list', $delta = 0) {
  4. if ($op == 'list') {
  5. $block[0]['info'] = t('Language switcher');
  6. // Not worth caching.
  7. $block[0]['cache'] = BLOCK_NO_CACHE;
  8. return $block;
  9. }
  10.  
  11. // Only show if we have at least two languages and language dependent
  12. // web addresses, so we can actually link to other language versions.
  13. elseif ($op == 'view' && variable_get('language_count', 1) > 1 && variable_get('language_negotiation', LANGUAGE_NEGOTIATION_NONE) != LANGUAGE_NEGOTIATION_NONE) {
  14. $path = drupal_is_front_page() ? '<front>' : $_GET['q'];
  15. $languages = language_list('enabled');
  16. $links = array();
  17. foreach ($languages[1] as $language) {
  18. $links[$language->language] = array(
  19. 'href' => $path,
  20. 'title' => $language->native,
  21. 'language' => $language,
  22. 'attributes' => array('class' => 'language-link'),
  23. );
  24. }

with:

  1.  
  2.  
  3. function locale_block($op = 'list', $delta = 0) {
  4. global $language;
  5. if ($op == 'list') {
  6. $block[0]['info'] = t('Language switcher');
  7. // Not worth caching.
  8. $block[0]['cache'] = BLOCK_NO_CACHE;
  9. return $block;
  10. }
  11.  
  12. // Only show if we have at least two languages and language dependent
  13. // web addresses, so we can actually link to other language versions.
  14. elseif ($op == 'view' && variable_get('language_count', 1) > 1 && variable_get('language_negotiation', LANGUAGE_NEGOTIATION_NONE) != LANGUAGE_NEGOTIATION_NONE) {
  15. $path = drupal_is_front_page() ? '<front>' : $_GET['q'];
  16. $languages = language_list('enabled');
  17. $links = array();
  18. $links[$language->language] = array(
  19. 'href' => $path,
  20. 'title' => $language->native,
  21. 'language' => $language,
  22. 'attributes' => array('class' => 'language-link'),
  23. );
  24. foreach ($languages[1] as $my_language) {
  25. if($my_language !== $languages)
  26. {
  27. $links[$my_language->language] = array(
  28. 'href' => $path,
  29. 'title' => $my_language->native,
  30. 'language' => $my_language,
  31. 'attributes' => array('class' => 'language-link'),
  32. );
  33. }
  34. }

Phillip (doğrulanmadı) on Ekim 21st 2011

Hi Bekir,

This is excellent. One small point. In english , lenght is spelled length.

best regards,

Phillip

Yeni yorum gönder

Bu alanın içeriği gizli tutulacak ve açıkta gösterilmeyecektir.
 .