WPML

Tìm hiểu cách dịch shortcode từ plugin, giao diện và những shortcode bạn tự phát triển bằng WPML.

Với WPML, bạn có thể dịch cả shortcode dựa trên văn bản và shortcode dựa trên ID. Shortcode dựa trên văn bản sẽ xuất ra văn bản, giống như thế này:

[goodmorning name="Dear client"]

Mặt khác, shortcode dựa trên ID sẽ xuất ra một phần tử bằng cách sử dụng số ID của nó:

[myslider id="1"]
[myslider id="2"]

Ở đây, mỗi shortcode đang xuất ra một slider khác nhau. Ví dụ: một shortcode có thể xuất ra slider bằng tiếng Anh và shortcode còn lại bằng tiếng Tây Ban Nha.

Để dịch shortcode, bạn sẽ thay thế ID của slider này bằng ID của slider khác (ví dụ: 1 → 2).

Dịch shortcode từ các plugin và giao diện tương thích

Để dịch shortcode từ các plugin giao diện tương thích, hãy truy cập WPML Bảng điều khiển dịch thuật và gửi trang có chứa shortcode của bạn đi dịch. Shortcode của bạn sẽ xuất hiện trong Trình biên tập dịch thuật nâng cao cùng với các nội dung khác của trang.

Ví dụ: đây là cách shortcode sau xuất hiện trong trình biên tập:

[goodmorning name="Dear client"]
Dịch shortcode dựa trên văn bản trong Trình biên tập dịch thuật nâng cao
Dịch shortcode dựa trên văn bản trong Trình biên tập dịch thuật nâng cao

Nếu shortcode của bạn bao gồm thuộc tính liên kết (URL), hãy sử dụng thanh tìm kiếm để tìm nó. Theo mặc định, WPML ẩn các liên kết trong shortcode.

Dịch các thuộc tính liên kết của shortcode trong Trình biên tập dịch thuật nâng cao
Dịch các thuộc tính liên kết của shortcode trong Trình biên tập dịch thuật nâng cao

Dịch shortcode từ các plugin và giao diện không tương thích

Để dịch shortcode từ các plugin và giao diện không tương thích, trước tiên bạn cần đăng ký chúng trong tệp Cấu hình XML tùy chỉnh của WPML.

Hãy xem xét ví dụ này với hai shortcode:

[fanpage link="https://example.com"]Some content[/fanpage]
[goodmorning name="dear client" type="official"]

Để đăng ký các shortcode này trong WPML, chúng ta sẽ sử dụng mã cấu hình sau:

<wpml-config>
  <shortcodes>
    <shortcode>
      <tag>goodmorning</tag>
      <attributes>
        <attribute>name</attribute>
        <attribute>type</attribute>
      </attributes>
    </shortcode>
    <shortcode>
      <tag label="Fanpage shortcode">fanpage</tag>
      <attributes>
        <attribute>link</attribute>
      </attributes>
    </shortcode>
  </shortcodes>
</wpml-config>

Đây là cách cấu hình trong WPML hoạt động:

  • Đặt tất cả shortcode bên trong <shortcodes>
  • Bọc các cài đặt shortcode riêng lẻ bên trong <shortcode>
  • Định nghĩa tên shortcode bằng <tag> và bao gồm các nhãn tùy chỉnh nếu cần. Những nhãn này hiển thị bên cạnh văn bản trong Trình biên tập dịch thuật nâng cao.
  • Định nghĩa từng tiêu đề thuộc tính bằng <attribute>
  • Bọc tất cả thuộc tính bằng <attributes>

Sau khi đăng ký shortcode, bạn có thể dịch chúng cùng với các nội dung khác của trang qua WPML Bảng điều khiển dịch thuật.

Dịch shortcode tùy chỉnh

Để dịch các shortcode tùy chỉnh do bạn tự phát triển, trước tiên bạn cần đăng ký chúng trong WPML. Sau khi hoàn tất, bạn có thể dịch chúng cùng với các nội dung khác của trang.

Dịch các văn bản được mã hóa cứng bên trong shortcode

Theo mặc định, các văn bản được mã hóa cứng không thể dịch được trong WPML. Để làm cho chúng có thể dịch được, bạn có thể sử dụng framework Gettext. Hãy xem xét ví dụ này, với “Good morning” là văn bản được mã hóa cứng:

function goodmorning_att($atts) {
    $default = array(
        'name' => 'there',
    );
    $a = shortcode_atts($default, $atts);
    return 'Good morning, '.$a['name'];
}
add_shortcode('goodmorning', 'goodmorning_att');

Để làm cho “Good morning” có thể dịch được, bạn có thể điều chỉnh mã để sử dụng Gettext:

function goodmorning_att($atts) {
    $default = array(
        'name' => 'there',
    );
    $a = shortcode_atts($default, $atts);
    return __('Good morning, ', 'default').$a['name'];
}
add_shortcode('goodmorning', 'goodmorning_att');

Điều này sẽ làm cho văn bản “Good morning” có thể dịch được và đưa nó vào Dịch chuỗi.

Tài nguyên bổ sung

Để tìm hiểu thêm về tệp wpml-config.xml, hãy truy cập hướng dẫn Tệp cấu hình ngôn ngữ. Để cấu hình các phần tử khác trong WPML, hãy xem các hướng dẫn bổ sung của chúng tôi:

Được viết bởi Amir · Cập nhật lần cuối vào 23 tháng 7 năm 2025