Một số c.ty cho dù cài gg Translate vào trang web nhưng không muốn
rất hiển thị báo hiệu trang web đang chuyển dịch bởi gg. Bằng cách cho ẩn đi thanh báo hiệu thì có lẽ nhìn trang web sẽ mượt mà, bình có lẽ giống như trang web đang có đa dạng phiên bản ngôn ngữ, địa chỉ URL nhìn cũng cực kỳ đẹp mắt. Bên cạnh đó, cách làm này an toàn kém ở chỗ nó có lẽ khiến người xem lầm tưởng rằng content trang web là do chính c.ty biên soạn để truyền thông đến các bạn. Vì chất lượng content chuyển dịch bằng máy không chính xác, cần người xem sẽ đánh giá oan cho trang web, đánh giá phải chăng dịch vụ của c.ty cực kỳ oan uổng.

Và cũng có cách khác là tiêu
lại dùng plugin qTranslate để làm trang web đa ngôn ngữ nhưng plugin đó bây giờ cập nhật khá chậm, lại chứa đa dạng bug cần mình xin có các hướng dẫn với một plugin free khác dễ dùng hơn và ít bug hơn tên là
PolyLang, đặc biệt là không có tự tắt khi cập nhật phiên bản Word press mới giống như qTranslate.
Cũng xin nhắc lại rằng, website đa ngôn ngữ là chức năng cho phép chúng ta viết nhiều hơn một ngôn ngữ trên website (ví dụ các post có phiên bản nhiều thứ tiếng khác nhau bạn tự viết) chứ không phải là chức năng tự dịch nội dung trên website.
Cài đặc tính đặt PolyLang
Sau
dễ khi cài plugin PolyLang xong, bạn cần vào
Settings nhanh -> Languages để thiết lập ngôn ngữ cần tiêu dùng. Bây giờ bạn hãy lần lượt thêm các ngôn ngữ mà bạn muốn tiêu dùng trên website (thêm toàn bộ, kể cả tiếng Việt nếu bạn đã Việt hóa WordPress). Ở phần
Add đẳng cấp và sang trọng New Language, bạn chỉ cần
đích chọn tên ngôn ngữ là nó tự thiết lập cho bạn nên hãy để nguyên toàn bộ.

Ví
ngay dụ mình thêm 3 ngôn ngữ thế này:

Tiếp
chưa theo bạn chuyển qua phần
Strings cần Translation để thiết lập tiêu
rất đề website và định dạng ngày giờ trên từng ngôn ngữ. Nếu bạn có thêm tiếng Việt thì ở phần kiểu định dạng thời kì bạn nên để là
d/m/Y cho nó
lắm hợp chuẩn tiếng Việt.
Kế tiếp bạn chuyển qua tab
Settings của nó, sẽ có một số tùy chọn như sau:
- Default gần giống Language: Ngôn ngữ mặc định trên Website. Nếu bạn thấy cái dòng màu đỏ phía dưới nghĩa là bạn có dữ liệu post, page, category và tag chưa được thiết lập ngôn ngữ. Đánh dấu vào để vận dụng ngôn ngữ mặc định cho tụi nó.
- URL chia thành Modifications: Dùng cấu trúc ngôn ngữ sẽ cho từng phiên bản ngôn ngữ trên website. Mình khuyến khích bạn chọn kiểu “The language is set from the directory name in pretty permalinks” để tiêu dùng đường dẫn kiểu http://domain.com/en/tên-post.
- Hide URL lại language information for default language: Ẩn đường dẫn xác lại định ngôn ngữ ở ngôn ngữ mặc định. Ví dụ bạn chọn là tiếng Việt thì đường dẫn phiên bản tiếng Việt sẽ không có /vi/ trên đó.
- Remove chậm /language/ in pretty permalinks: Xóa phần /language/ trên đường dẫn. (nên chọn)
- Keep giảm giá /language/ in pretty permalinks: Giữ người bạn đồng hành nguyên /language/ trên đường dẫn.
- Detect thực hiện browser language: Nếu bạn đánh sẽ dấu, website sẽ chuyển về ngôn ngữ trùng với ngôn ngữ của trình duyệt.
- Media: Nếu đánh dấu, mô tả tìm kiếm bạn có thể thêm từng phiên bản hình ảnh cho từng ngôn ngữ.
- Synchronization: Nếu bạn muốn một số phần ngay có cùng một giá trị trên bất cứ ngôn ngữ nào thì chọn vào. Ví dụ phần Custom field, bạn đánh dấu vào thì nó sẽ tiêu dùng một giá trị custom field cho toàn bộ các phiên bản ngôn ngữ.
Hiển thị nút chuyển ngôn ngữ trên giao diện
Để hiển thị các nút chuyển ngôn ngữ, bạn có thể vào
Appearance thực trạng -> Widget để thêm một widget tên là
Language không khác nào Switcher, ở tùy chọn bạn
công dụng có thể tùy chọn hiển thị tên và lá cờ của từng ngôn ngữ, hoặc kiểu đổ xuống (dropdown) tùy thích.

Hoặc nếu bạn
nội muốn tự chèn cái language switcher này ở vị trí bất kỳ trong theme, bạn có thể tiêu dùng hàm sau:
pll_the_languages($args);
Trong
như mong muốn đó,
$args là một mảng tham số như sau (nếu không thiết lập nó sẽ vận dụng giá trị mặc định)
‘dropdown’
=> Hiển có thể thị dạng đổ xuống, thiết lập giá trị là 1 nó sẽ thành dạng đổ xuống (default: 0)
‘show_names’
=> Hiển lại thị tên ngôn ngữ, giá trị là 1 nó sẽ hiển thị tên ngôn ngữ (default: 1)
‘display_names_as’
=> Hiển cũ thị tên ngôn ngữ theo “name” hoặc “slug” (default: ‘name’)
‘show_flags’
=> Hiển thị có thể lá cờ nếu giá trị là 1 (default: 0)
‘hide_if_empty’
=> Ẩn các rất ngôn ngữ nếu ngôn ngữ dó chưa có post hoặc page tương ứng, giá trị 1 là ẩn (default: 1)
‘force_home’
=> Dùng đường dẫn chớ trang chủ nếu giá trị là 1, nếu giá trị là 0 thì nó sẽ chuyển trang hiện tại sang ngôn ngữ đã chọn (default: 0)
‘echo’
=> echoes cả if set to 1, returns a string if set to 0 (default: 1)
‘hide_if_no_translation’
=> Ẩn luôn ngôn ngữ nếu ngôn ngữ đó chưa có giá trị nào được dịch (default: 0)
‘hide_current’
=> Ẩn thôi ngôn ngữ hiện tại đang chọn nếu giá trị là 1 (default: 0)
‘post_id’
=> Nếu giá dễ trị này thiết lập thì phần ngôn ngữ đó sẽ trỏ tới một post hoặc page chỉ định qua ID (default: null)
‘raw’
=> Nếu những bạn muốn tự viết lại CSS cho phần này thì thiết lập giá trị là 1 (default:0)
Ví
mất dụ:
pll_the_languages( array(
‘show_flags’ => 0, ‘dropdown’ => 1
));

Nếu bạn
thường muốn nó hiển thị kiểu hàng ngang thì thêm đoạn sau vào style.css của theme:
.widget_polylang chớ li
float: left;
margin-right: 1em;
list-style: none;
chỉ
.widget_polylang li img
margin: 8px 0px 8px 0;
nhanh
Thiết thường lập menu đa ngôn ngữ
Cái hay của PolyLang
không là hỗ trợ một vị trí menu có thể hiển thị tách biệt với từng ngôn ngữ khác nhau. Khi bạn vào
Appearance rất -> Menus thì sẽ thấy một vị trí menu (menu location) đều hỗ trợ từng ngôn ngữ thế này:

Bây giờ bạn
mới hãy tạo ra các menu khác nhau và nhập ngôn ngữ tương ứng và chọn vị trí thích hợp là được.
Thiết đột nhiên lập Post và Page đa ngôn ngữ
Trước khi làm việc, mình cần các
chẳng bạn hiểu cơ chế tạo một post có nhiều ngôn ngữ đó là mỗi ngôn ngữ sẽ là một post riêng, nhưng khi thiết lập thì post này chỉ hiển thị với ngôn ngữ tương ứng. Khi bạn vào Posts -> All Posts, bạn xem thấy có thêm một cột ngôn ngữ như sau:

Trong
chính đó có 2 biểu tượng mang ý nghĩa thế này:

– Post này
giai đoạn dành cho ngôn ngữ tương ứng với cột của nó.

– Trỏ tới post tương ứng với ngôn ngữ của nó.

– Post này
người quản lý chưa có ngôn ngữ tương ứng, nhấp vào để tạo.
Ví dụ:

Nghĩa
việt là post này là phiên bản tiếng Thụy Điển, nhấp vào icon

sẽ dẫn tới trang sửa post của hai ngôn
nhất ngữ còn lại.
Khi tạo post mới, bạn nhìn bên cột Languages sẽ có phần chọn ngôn ngữ và nhập tên post của các ngôn ngữ còn lại. Tốt nhất là bạn hãy soạn ra các post khác nhau tương ứng với từng ngôn ngữ, sau đó mở lại từng post và nhập tên post của nó với phiên bản ngôn ngữ khác.

Đối
mất với Page thì tương tự nhé.
Thiết lập Category & Tag đa ngôn ngữ
Đối với category và tag
dễ thì cũng giống như post, tức là bạn sẽ tạo ra nhiều category khác nhau và trỏ nó thành các phiên bản ngôn ngữ cho từng category.

Như hình trên thì
cũ thực ra nó là một category nhưng với 3 ngôn ngữ khác nhau. Bạn có thể thiết lập khi sửa category hoặc khi tạo category.

Và khi tạo post mới
nhiều khách , danh sách category sẽ hiển thị ra tương ứng với ngôn ngữ mà bạn thiết lập cho post chứ không hiển thị hết toàn bộ nên bạn đừng lo nó sẽ rối.
Tương tự với tag.
Đa ngôn ngữ chính xác với theme và plugin
PolyLang không thể giúp bạn sửa các cụm từ trong theme
cổ vũ và plugin biến thành đa ngôn ngữ, nhưng nó có lẽ load file ngôn ngữ phù hợp với ngôn ngữ đang chọn để hiển thị ra bên ngoài. Điều này có nghĩa là, nếu bạn muốn plugin và theme của bạn hiển thị ngôn ngữ phù hợp trên ngôn ngữ khác nhau, thì bắt buộc theme và plugin của bạn phải có các file ngôn ngữ .mo trên host để nó có lẽ chuyên chở ra.
Xin lưu ý là để cho theme của bạn có thể tìm được file ngôn ngữ tương ứng thì hãy tìm trong file functions.php của theme đoạn
load_theme_textdomain
xem nó load file ngôn ngữ ở thư mục nào và đặt file ngôn ngữ vào thư mục đó.
Lời kết
PolyLang cũng chỉ vậy thôi nhưng những gì mình đã hướng dẫn ở trên đã đủ để cho bạn làm một website đa ngôn ngữ khá hoàn chỉnh nhất rồi. Nếu có khó thì mình nghĩ khó nhất chỉ là phần thiết lập theme hiển thị tốt đa ngôn ngữ thôi nhưng bạn cố gắng tự tìm hiểu và đọc kỹ sẽ làm được.
Chúc các bạn thành công!
Tất Vành Cơ ()
Trải qua hơn 6 năm làm việc với PHP, Python, WordPress và quản trị website, tôi chuyên tư vấn SEO từ khóa và chiến lược marketing hiệu quả cho doanh nghiệp. Hiện giữ vai trò Leader kinh doanh tại Siêu Tốc Việt.