Rất nhiều bạn sau khi cài đặt Joomla! phiên bản 1.0.x nhận thấy Website của mình bị lỗi Tiếng Việt. Có thể là lỗi một phần (tại một số chỗ trên menu, một số chỗ trên tiêu đề bài viết, trong phần nội dung...) hoặc lỗi toàn bộ. Có thể là Website hiện toàn dấu hỏi chấm (???) hoặc nội dung bị biến thành các ký tự lạ như "Lá»—i tiếng Việt có thể do những nguyên nhân nà o". Xin giới thiệu với các bạn một số nguyên nhân và cách xử lý:
0. Nguyên nhân chính
Joomla 1.0.x không hỗ trợ hoàn toàn cho UTF-8 (vấn đề này chỉ được giải quyết triệt để trong Joomla 1.5), tuy nhiên bạn không nên quá lo lắng vì chúng ta có nhiều cách để vượt qua được khó khăn này.
1. Do database
- Bạn cần kiểm tra phiên bản MySQL (tối thiểu: 4.1.x)
- Khi tạo database cần chọn "MySQL connection collation": utf8_general_ci
2. Do file ngôn ngữ trong thư mục "Joomla\languages\"
Kiểm tra tất cả các file ngôn ngữ nhưu: "english.php", "vietnamese.php", "vietnam.php"...
Tìm biến _ISO và thay bằng giá trị như dưới đây
/** templates/*.php */
DEFINE('_ISO','charset=utf-8');
3. Do file "index.php" trong thư mục templates
Bạn cần vào file \templates\{your_template}\index.php:
Nếu đã có dòng:
"Content-Type" content="text/html;" />
thì phải chắc chắn rằng dòng định nghĩa biến ISO trong file ngôn ngữ language\xxx.php phải là
DEFINE('_ISO','charset=utf-8');
Nếu có dòng:
"Content-Type" content="text/html; charset=xxx" />
thì phải chắc là có charset=utf-8, nếu là ISO_xxx hãy đổi lại thành utf-8
4. Do file ".css" trong thư mục templates
Kiểm tra chỗ khai báo font-family xem có phải là các font UNICODE hay không.
VD:
font-family: Arial, Helvetica, sans-serif;
font-family: "Times New Roman", Times, serif;
font-family: "Courier New", Courier, monospace;
font-family: Verdana, Arial, Helvetica, sans-serif;
5. Một cách xử lý khác
Chèn thêm đoạn mã sau vào file "index.php"
ini_set('default_charset', 'utf-8');
No comments:
Post a Comment