dedecms5.5言語以上

2654 ワード

/index.phpトップページ
//    
 if( isset($_GET['language']) && !isset($_SESSION['language_file']) ){
  if( in_array($_GET['language'],$cfg_ary_language) ){
   $_SESSION['language_file'] = $_GET['language'];
  }else{
   $_SESSION['language_file'] = $cfg_ary_language[0];
  }
 }


 
 
/data/common.inc.php
// templates    language/chinese.php,english.php
$cfg_ary_language = array('chinese','english');

if(!isset($_SESSION)){
	session_start();
} 

if( isset($_SESSION['language_file']) ){
	switch($_SESSION['language_file']){
		case 'chinese':
				$tmp_lang = 'typename';
			break;
		case 'english':
				$tmp_lang = 'typename2';
			break;
		default:
				$tmp_lang = $_SESSION['language_file'];			
	}
}else{
	$tmp_lang = 'typename';
}

define('LANGUAGE_TYPENAME',$tmp_lang);

unset($tmp_lang);

 
 include/dedetag.class.phpのclass DeTagParse{}内に追加
 
function SetLanguage(){
//--------------------    --------------------------------------

  $language_file = DEDETEMPLATE.'/language/';
  if( isset($_SESSION['language_file']) ){
   $language_file .= $_SESSION['language_file'] . '.php';
  }else{
   $language_file .= 'chinese.php';
  }

  require ($language_file);
  $ary_search = array_keys($ary_language);
  $this->SourceString = str_replace($ary_search,$ary_language,$this->SourceString); 
///////////////////////////////////////////////////

 }


 
language/chinese.php
//      
$ary_language = array(

'__typename__'		=>'typename',
'__en1__'			=>'english',
'__en2__'			=>'English',
'__indexf__'		=>' ',
'__page__'		=>' ',
'__username__'		=>'   ',
'__password__'		=>'     ',
'__login__'			=>'  ',
'__register__'		=>'  ',

'__question__'		=>'      ',
'__bbs__'			=>'  '

 
 
データベースに英語フィールド、バックグラウンドに英語フィールドを追加