Đổi tên ngôn ngữ trong Drupal
Trong giai đoạn đầu TTCN dùng ngôn ngữ riêng thay vì dùng tiếng Việt, mục đích là để tách biệt bản dịch từ cộng đồng với bản dịch sẵn có. Nhưng cách làm này tỏ ra khá bất tiện.
Với ngôn ngữ riêng có mã "vi-VN" thay vì mã chuẩn "vi", TTCN không thể cập nhật dễ dàng các bản dịch từ localize.drupal.org
do đó mình quyết định quay về với ngôn ngữ gốc. Đáng tiếc là mã ngôn ngữ trong Drupal được dùng nhiều nơi và không có quy tắc nhất định nào cả, nên Drupal không cho phép đổi tên từ "vi-VN" thành "vi". Vậy là phải làm thủ công trực tiếp với SQL.
Dưới đây là câu lệnh cho Drupal 6 với các mô-đun cơ bản. Chú ý là TTCN chỉ dùng một ngôn ngữ duy nhất (vi-VN và sẽ chuyển sang vi), nếu bạn dùng nhiều ngôn ngữ thì cách làm sẽ khác.
Đầu tiên, xóa ngôn ngữ "vi" nếu đã có sẵn (song song với vi-VN).
DELETE FROM languages WHERE language='vi'; DELETE FROM locales_target WHERE language='vi';
Sau đó đổi tên ngôn ngữ trong các bảng:
UPDATE languages SET language='vi' WHERE language='vi-VN'; UPDATE locales_target SET language='vi' WHERE language='vi-VN'; UPDATE node SET language='vi' WHERE language='vi-VN'; UPDATE url_alias SET language='vi' WHERE language='vi-VN';
Do trước đây có một thời gian cho phép người dùng chọn ngôn ngữ (dù chỉ có duy nhất một ngôn ngữ kích hoạt), nên cũng cần đặt lại (do vi-VN không còn tồn tại):
UPDATE users SET language='';
Cuối cùng, vào trang cấu hình ngôn ngữ và chọn lại ngôn ngữ mặc định.
Bài viết này có mục đích chính là để lưu trữ. Tất nhiên, nếu nó có ích với bạn thì càng tốt!
Bình luận