자동 언어 감지 >> 필수 체크가 되어야 >>> 다국어 위젯에서 언어를 변경이 가능

 

1.코드통일화 :  cv_multilang.extend.php >>> js 소스코드 >> multilang.js 파일에 추가

2. 다국어... 헤더/푸터/사이드 > 반응형으로 위젯 위치 수정 css extend  파일 2개

3. cv_multilang.extend.php 파일에서 수정할 부분들 * 기존 코드 구조를 유지하면서 반응형 기능만 추가

 

4. 국기 스타일을 추가할 수 있도록 하기.....

관리자모드 multilang_config >>> 국기이미지 타입 선택 >>>

cv_multilang.extend.php 파일 해당 국기로 이미지 출력되게 코드 수정

(함수 추가로 필요하면.... function.php)

 

공통 function 함수 / multilang.css css클래스 / multilang.js  스크립트 / cv_multilang.extend.php 위젯 출력 부분

 

???? 실제 시나리오 예시

비활성화 상태에서의 출력:

 
자동 언어 감지: ❌ 비활성화
자동 언어 감지 결과: en (브라우저에서 영어 감지됨, 하지만 적용 안됨)

활성화 상태에서의 출력:

 
자동 언어 감지: ✅ 활성화  
자동 언어 감지 결과: en (브라우저에서 영어 감지되어 실제 적용됨)

???? 감지 기준 순서

  1. 저장된 언어 (쿠키/세션) - 최우선
  2. 브라우저 언어 (Accept-Language 헤더)
  3. IP 기반 국가 (GeoIP 데이터베이스)
  4. 기본 언어 (설정된 기본값)

???? 핵심 포인트

  • 감지 결과는 디버깅/로깅 목적으로 항상 수집
  • 설정은 그 결과를 실제로 사용할지만 결정
  • 비활성화해도 "어떤 언어가 감지되었는지"는 확인 가능
  • 관리자가 자동 감지 품질을 모니터링할 수 있음

이렇게 분리된 이유는 관리자가 자동 감지 정확도를 평가하고, 필요시 설정을 조정할 수 있도록 하기 위함입니다!

 

 

자동 언어감지란? 

  1. 드롭다운 선택값 (localStorage나 쿠키에 저장된 값) - 최우선
  2. 브라우저 언어 (Accept-Language)
  3. IP 기반 국가 언어

드롭다운에서 한 번 선택하면 그 값이 저장되어서 다음 방문 시 "자동 언어 감지 결과"로 나타납니다.

 
 
 
 

사이트에 적용하는 방법

테마 파일에 코드 추가 :

// 테마의 head.php 파일에 추가
<?php
if (file_exists(G5_PLUGIN_PATH . '/multilang/multilang.php')) {
    include_once G5_PLUGIN_PATH . '/multilang/multilang.php';
    $GLOBALS['multilang'] = new MultilangPlugin();
}
?>
// 헤더에 언어 선택 위젯 표시 (원하는 위치에)
<?php if (isset($GLOBALS['multilang'])): ?>
    <?php echo $GLOBALS['multilang']->get_language_widget(); ?>
<?php endif; ?>

또는 extend 방식

// /extend/common.extend.php 에 추가
<?php
if (!defined('_GNUBOARD_')) exit;

// 다국어 플러그인 자동 로드
if (file_exists(G5_PLUGIN_PATH . '/multilang/multilang.php')) {
    include_once G5_PLUGIN_PATH . '/multilang/multilang.php';
    $GLOBALS['multilang'] = new MultilangPlugin();
    
    // 전역 번역 함수 등록
    function __($text) {
        return isset($GLOBALS['multilang']) ? $GLOBALS['multilang']->translate($text) : $text;
    }
}
?>

 

분석한 핵심 기능들

인기 기능 분석

  1. 구글 번역 API 활용 - 실시간 자동번역
  2. 8개 언어 지원 - 영어, 중국어, 일본어, 베트남어, 러시아어, 프랑스어, 독일어, 태국어
  3. 국기 이미지 표기 - 시각적 언어 선택
  4. 헤더 위치 배치 - 롤오버 방식 UI
  5. localStorage 활용 - 언어 설정 유지
  6. 페이지 이동시 번역 유지 - 끊김 없는 번역

성능 최적화 포인트

  • 번역 위젯 완전 초기화 후 실행
  • 페이지 로드마다 번역 요소 재초기화
  • 캐시 시스템으로 속도 개선
  • 한국어는 번역 안 함 (원본 유지)

우리가 만들 완전체 다국어 플러그인 기능

기본 기능 (필수)

  • ✅ 구글 번역 API 연동
  • ✅ 국기 이미지 언어 선택
  • ✅ localStorage 언어 설정 저장
  • ✅ 페이지 이동시 번역 유지
  • ✅ 관리자 설정 페이지

고급 기능 (차별화)

  • IP 기반 자동 언어 감지 (국가별 자동 설정)
  • 다중 번역 API (구글 + 파파고 + 바이두)
  • 게시판별 번역 설정 (어떤 게시판만 번역할지 선택)
  • 번역 제외 영역 (특정 클래스/ID 번역 안 함)
  • SEO 최적화 (언어별 URL, 메타태그)
  • 번역 품질 개선 (전문 용어 사전 기능)