Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Skeleton FX Theme
#10
Thank you for your reply!

As I said I only want language variables for template, like you did that.

So I have copied and pasted the following your code to my functions.php 
PHP Code:
<?php

/***  Function to get variables from Lang array  ***/
function get_lang_param($name="") {
 
   if(empty($name)) return false;
 
   if(isset($_COOKIE['current_lang'])) $def_lang $_COOKIE['current_lang'];
 
   if(!isset($def_lang)) {
 
       global $language;
 
       if(isset($language) && !empty($language)) $def_lang=$language;
 
       else {
 
           $LANG getDefaultLanguage();
 
           if(isset($LANG) && !empty($LANG) && substr($LANG,0,2)!="en"$def_lang getDefaultLanguage();
 
           else $def_lang="en_US";
 
       }
 
       if($def_lang == "en"$def_lang "en_US";
 
       if(strlen($def_lang)<3$def_lang $def_lang.'_'.strtoupper($def_lang);
 
   }
 
   if (file_exists(str_replace('\\','/',dirname(__FILE__)).'/lang/'.$def_lang.'.php')) {
 
       require(str_replace('\\','/',dirname(__FILE__)).'/lang/'.$def_lang.'.php');
 
   }
 
   if(isset($set_lang[$name]) && !empty($set_lang[$name])) $lang_param $set_lang[$name];
 
   else $lang_param "Search";
 
   return $lang_param;
}


/***  i18n Set Language function  ***/
function getDefaultLanguage() {
 
   if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"]))
 
   return parseDefaultLanguage($_SERVER["HTTP_ACCEPT_LANGUAGE"]);
 
   else return parseDefaultLanguage(NULL);
}
function 
parseDefaultLanguage($http_accept$deflang "en") {
 
   if(function_exists('return_theme_setting') && return_theme_setting('site_deflang') && strlen(return_theme_setting('site_deflang')) > 1) {
 
       $deflang return_theme_setting('site_deflang');
 
   }
 
   elseif(isset($http_accept) && strlen($http_accept) > 1 {
 
       # Split possible languages into array
 
       $x explode(",",$http_accept);
 
       foreach ($x as $val) {
 
           #check for q-value and create associative array. No q-value means 1 by rule
 
           if(preg_match("/(.*);q=([0-1]{0,1}.\d{0,4})/i",$val,$matches))
 
           $lang[$matches[1]] = (float)$matches[2];
 
           else
            $lang
[$val] = 1.0;
 
       }
 
       #return default language (highest q-value)
 
       $qval 0.0;
 
       foreach ($lang as $key => $value) {
 
           if ($value $qval) {
 
               $qval = (float)$value;
 
               $deflang $key;
 
           }
 
       }
 
   }
 
   return $deflang;
}
function 
check_language($long true) {
 
   global $language;
 
   global $set_lang;
 
   if(isset($_GET['setlang'])) {
 
       $langas $_GET['setlang'];
 
       if(strlen($langas) == 2) {
 
           if($langas == "en"$langas $langas."_US";
 
           else $langas $langas."_".strtoupper($langas);
 
       }
 
       if (isset($_COOKIE['current_lang'])) {
 
           setcookie("current_lang"$langastime()-100 '/');
 
           $_COOKIE['current_lang']=$langas;
 
       }
 
       setcookie("current_lang"$langastime()+3600 '/');
 
   }
 
   if(isset($_COOKIE['current_lang'])) $langas $_COOKIE['current_lang'];
 
   elseif(!isset($langas) || empty($langas) || strlen($langas)<2) {
 
       if(isset($language)) {
 
           if($long$langas $language."_".strtoupper($language);
 
           else $langas $language;
 
       }
 
       else $langas getDefaultLanguage();
 
   }
 
   if(!isset($langas) || empty($langas) || strlen($langas)<2) {
 
       if($long$langas "en_US";
 
       else $langas "en";
 
   }
 
   if(strpos($langas"-") !== false$langas str_replace("-""_"$langas);
 
   if (file_exists(str_replace('\\','/',dirname(__FILE__)).'/lang/'.$langas.'.php')) {
 
       include(str_replace('\\','/',dirname(__FILE__)).'/lang/'.$langas.'.php');
 
   }
 
   else {
 
       include(str_replace('\\','/',dirname(__FILE__)).'/lang/en_US.php');
 
   }
}
?>

Now I have two files: en_US.php and ru_RU.php in my lang folder in the theme directory.

And I do have i18n and other plugins installed and two languages so far..

Now in my template.php I suppose I must use something like:
PHP Code:
<?php echo $set_lang['FX_MYTEXT']; ?>

and get relevant translations from those two lang files.

But I don't get any output for some reason. What could you suggest?
Reply


Messages In This Thread
Skeleton FX Theme - by asemion - 2017-03-31, 22:39:12
RE: Skeleton FX Theme - by hhj - 2017-04-18, 03:01:31
RE: Skeleton FX Theme - by asemion - 2017-04-19, 03:38:47
RE: Skeleton FX Theme - by hhj - 2017-04-22, 06:19:19
RE: Skeleton FX Theme - by asemion - 2017-04-25, 05:20:38
RE: Skeleton FX Theme - by hhj - 2017-04-29, 04:01:40
RE: Skeleton FX Theme - by asemion - 2017-06-12, 22:20:41
RE: Skeleton FX Theme - by 0zz - 2017-09-01, 15:38:28
RE: Skeleton FX Theme - by asemion - 2017-09-03, 21:25:06
RE: Skeleton FX Theme - by 0zz - 2017-09-04, 00:09:22
RE: Skeleton FX Theme - by asemion - 2017-09-04, 05:27:23
RE: Skeleton FX Theme - by 0zz - 2017-09-04, 13:57:21
RE: Skeleton FX Theme - by Arugula - 2017-12-30, 03:01:15
RE: Skeleton FX Theme - by asemion - 2017-12-30, 06:58:17
RE: Skeleton FX Theme - by Arugula - 2017-12-30, 15:23:28
RE: Skeleton FX Theme - by asemion - 2017-12-30, 23:56:12
RE: Skeleton FX Theme - by Arugula - 2018-01-05, 11:50:22
RE: Skeleton FX Theme - by Arugula - 2018-01-05, 17:47:12
RE: Skeleton FX Theme - by Arugula - 2018-01-10, 11:31:03
RE: Skeleton FX Theme - by Arugula - 2018-01-10, 13:24:29
RE: Skeleton FX Theme - by Arugula - 2018-01-10, 16:26:49
RE: Skeleton FX Theme - by asemion - 2018-01-12, 00:56:47
RE: Skeleton FX Theme - by asemion - 2018-01-12, 23:57:47
RE: Skeleton FX Theme - by Arugula - 2018-01-20, 15:45:33
RE: Skeleton FX Theme - by Arugula - 2018-01-20, 18:01:48
RE: Skeleton FX Theme - by asemion - 2018-01-29, 05:45:37
RE: Skeleton FX Theme - by Arugula - 2018-02-10, 13:51:34
RE: Skeleton FX Theme - by Arugula - 2018-02-22, 04:17:16
RE: Skeleton FX Theme - by Arugula - 2018-04-13, 08:33:51
RE: Skeleton FX Theme - by asemion - 2018-04-13, 15:51:43



Users browsing this thread: 1 Guest(s)