WPML

Các ngôn ngữ viết từ phải sang trái đặt ra một thách thức đặc biệt. May mắn thay, WordPress hỗ trợ rất nhiều để giảm bớt khó khăn này. Chúng tôi sẽ chỉ cho bạn cách tạo một trang web RTL hoạt động hoàn hảo, dựa trên giao diện TwentyTen mặc định.

Khi bạn tạo một trang web đa ngôn ngữ RTL / LTR, bạn cần giải quyết hai vấn đề:

  • Chỉnh sửa / dịch thuật
  • Hiển thị

Phần đầu tiên, để tạo hoặc dịch trang web của bạn, đồng nghĩa với việc làm việc trong trang quản trị WordPress bằng đúng ngôn ngữ và đúng hướng. Nếu bạn đang dịch giữa các ngôn ngữ LTR và RTL, hãy nhớ rằng bạn sẽ cần xem nội dung có hướng hỗn hợp trên cùng một màn hình.

Khi hiển thị trang web, giao diện của bạn cần xử lý đúng hướng hiển thị cho các ngôn ngữ RTL và LTR.

Hướng dẫn này sẽ theo dõi Trang web demo đa ngôn ngữ Twenty Ten của chúng tôi, có sẵn bằng tiếng Anh, tiếng Tây Ban Nha và tiếng Do Thái (RTL).

Chuẩn bị – Lấy các tệp .mo của lõi và giao diện


Bản thân WordPress và giao diện mặc định đã được bản địa hóa hoàn toàn sang nhiều ngôn ngữ. Chúng ta cần bản dịch mới nhất, vì vậy tôi quyết định lấy nó từ các bản cài đặt WordPress đã được bản địa hóa. Bạn có thể lấy chúng từ đây:
Sau khi bạn tải xuống và giải nén WordPress, hãy truy cập vào wordpress/wp-content/languages. Sao chép toàn bộ nội dung vào thư mục languages của bạn. Làm tương tự cho giao diện. Các tệp bản dịch sẽ nằm trong wp-content/themes/twentyten (hoặc giao diện mặc định hiện tại nếu bạn đọc bài viết này sau).

Bạn cũng nên cấu hình WPML để cho phép nó dịch giao diện và plugin.

Dịch thuật


Module Quản lý dịch thuật của WPML cho phép gửi các công việc dịch thuật và dịch bằng các tài khoản khác nhau. Nó cũng cho phép bạn dịch bằng Trình biên tập dịch thuật của WPML. Khi có liên quan đến nội dung có hướng hỗn hợp, điều này đặc biệt quan trọng, vì Trình biên tập dịch thuật tự động điều chỉnh hướng cho từng trường.

Nếu điều này mới mẻ với bạn, trước tiên hãy đọc về module Quản lý dịch thuật.

Đây là giao diện khi tôi dịch bài viết Hello World sang tiếng Do Thái.

Chỉnh sửa từ phải sang trái

Bạn có thể thấy rằng các văn bản tiếng Anh được căn trái, trong khi tiếng Do Thái được căn phải. Tôi thậm chí có thể sử dụng chế độ HTML để sao chép và dán các mục từ tiếng Anh. Chế độ HTML hiển thị LTR, để cho phép bạn nhập các thẻ một cách chính xác.

Khi bạn dịch các chuỗi, WPML cũng hiển thị chúng theo đúng hướng. Đây là giao diện của màn hình Dịch chuỗi khi tôi dịch tiêu đề widget Search.

Dịch chuỗi RTL

Các module Trình biên tập dịch thuật và Dịch chuỗi sẽ cho phép chúng ta dịch trang web hoàn toàn. Tiếp theo, chúng ta xem cách hiển thị nó một cách chính xác theo đúng hướng.

Hiển thị trang web bằng RTL và LTR


Bây giờ nội dung của bạn đã được dịch, đã đến lúc chuyển sự chú ý của chúng ta sang giao diện.

Dòng nhỏ này thực hiện hầu hết các phép thuật:

<html dir="rtl" lang="he-IL">

Bạn có thể thấy nó nếu bạn xem mã nguồn của bất kỳ trang tiếng Do Thái nào. Ví dụ: trang chủ.

Thuộc tính dir="rtl" cho trang web biết rằng hướng hiển thị cho toàn bộ trang web là Từ phải sang trái. Các trình duyệt hiểu điều đó và sẽ lật mọi thứ theo đúng hướng.

Dòng PHP duy nhất này, từ header.php, biến điều đó thành hiện thực:

<html <?php language_attributes(); ?>>

Lệnh gọi đến language_attributes chèn các thuộc tính dir và lang. Các giá trị đến từ tệp .mo của lõi. Nếu bạn có các tệp .mo chính xác cho WordPress, bạn sẽ nhận được các giá trị chính xác cho các thuộc tính này.

Nếu HTML và CSS trong giao diện của bạn tuân theo các thực tiễn ‘an toàn’, thì đây thực sự là tất cả những gì bạn cần. An toàn ở đây có nghĩa là không sử dụng định vị hoặc chiều rộng tuyệt đối. Nếu bắt buộc phải sử dụng các giá trị tuyệt đối, bạn có thể cân nhắc việc tải các CSS khác nhau cho từng ngôn ngữ.

Bạn có thể làm điều này dễ dàng bằng cách sử dụng các câu lệnh điều kiện kiểm tra hằng số ICL_LANGUAGE_CODE (được mô tả trong API lập trình WPML).

Kết quả


Dưới đây là giao diện trang web demo của chúng tôi bằng tiếng Anh, tiếng Tây Ban Nha và tiếng Do Thái.

Tiếng Anh

Tiếng Tây Ban Nha

Tiếng Do Thái

Nó không khó như bạn nghĩ. Hãy thử và cho chúng tôi biết bạn đang làm như thế nào.

Bạn thấy bài viết này hữu ích? Hãy chia sẻ bài viết này: