Công cụ thành viên

Công cụ trang web


programming5:thematic:language

Đây là một phiên bản cũ của tài liệu!


NukeViet 5 sử dụng phần quản lý ngôn ngữ mới, khác với NukeViet 3 và 4. Lớp \NukeViet\Core\Language được sử dụng để quản lý ngôn ngữ.

Sử dụng ngôn ngữ trong module và template

Giao diện Smarty

Nếu trong function chưa gọi global cần gọi global $nv_Lang

Trong php cần assign:

$tpl->assign('LANG', $nv_Lang);

Trong file tpl:

{$LANG->get('admin_logout_title')}

Nếu trong keylang có truyền tham số (%s, %d …) thì dùng

{$LANG->get('admin_logout_title', $para1, $para2 ...)}

Phương thức get sẽ tìm keylang theo thứ tự lang global, lang module, lang block. Nếu keylang không có sẽ xuất luôn keylang ra.

Nếu tìm riêng ở lang nhỏ hơn dùng

{$LANG->getModule('admin_logout_title')}
{$LANG->getGlobal('admin_logout_title')}
{$LANG->getBlock('admin_logout_title')}

Giao diện sử dụng Xtemplate

Xuất lang ra trong php

$tpl->assign('GLANG', \NukeViet\Core\Language::$lang_global);
$tpl->assign('MLANG', \NukeViet\Core\Language::$lang_module);
$tpl->assign('BLANG', \NukeViet\Core\Language::$lang_block);

Trong file tpl dùng như cũ {MLANG.lang_key}

Không cần gọi global biến $nv_Lang nếu dùng Xtemplate

Hướng dẫn ngôn ngữ ở cấp độ hệ thống

Khởi tạo lang

$nv_Lang = new \NukeViet\Core\Language();

Đọc ngôn ngữ global

$nv_Lang->loadGlobal($admin = false);

Nếu $admin = false thì đọc ở global.php nếu $admin = true đọc admin_global.php

Đọc ngôn ngữ module

$nv_Lang->loadModule($module_file, $admin = false, $modadmin = false);

Nếu $modadmin = true đọc ở includes/language/admin_xxx.php

Nếu $modadmin = false đọc ở modules/xxx/language/yyy.php tùy theo $admin mà đọc admin_vi.php hay vi.php

Đọc ngôn ngữ giao diện

$nv_Lang->loadTheme($global_config['module_theme'], $admin = false);

Nếu $admin = false đọc themes/xxx/language/vi.php ngược lại đọc admin_vi.php

Đọc ngôn ngữ install

$nv_Lang->loadInstall($lang);

Đọc file ngôn ngữ bất kỳ

$nv_Lang->loadBlock($filepath);

Ngôn ngữ tạm

Đọc ngôn ngữ khác, không phải là NV_LANG_INTERFACE hiện tại

Thay đổi ngôn ngữ đã đọc vào

programming5/thematic/language.1526280335.txt.gz · Sửa đổi lần cuối: 2018/05/14 13:45 bởi hoaquynhtim99