Bỏ qua điều hướng

WPML Liên kết đính kèm ngăn liên kết giữa các trang và bài đăng không bao giờ bị phá vỡ, ngay cả khi các trang di chuyển và được đổi tên.

WordPress làm cho việc thay đổi địa chỉ trang trở nên quá dễ dàng, khiến tất cả các liên kết đến bị hỏng (lỗi 404). Dưới đây là một số hành động có thể dẫn đến lỗi 404:

  • Thay đổi cha mẹ của trang
  • Thay đổi sên
  • Thay đổi cấu trúc permalink của trang web

WPML ngăn chặn những thay đổi trong URL phá vỡ các liên kết đến. Khi bạn tạo một liên kết, WPML sẽ tự động làm cho nó trở nên hấp dẫn. Thay vì lưu trữ URL của trang đó (tại thời điểm liên kết được tạo), nó sẽ lưu số trang. Điều này không bao giờ có thể thay đổi, bất kể bạn làm gì.

Sau đó, khi trang được hiển thị, WPML sẽ chèn liên kết cố định của trang bạn đang liên kết đến. Bất cứ khi nào URL thay đổi, tất cả các trang liên kết tới nó sẽ cập nhật ngay lập tức và sẽ liên kết đến địa chỉ chính xác.

Các ảnh chụp màn hình sau đây cho thấy các liên kết nội bộ trông như thế nào trong cơ sở dữ liệu sau khi Liên kết đính kèm được bật.

Các liên kết bị dính bởi WPML được xem trong trình chỉnh sửa Khối
Các liên kết bị dính bởi WPML được xem trong trình chỉnh sửa Khối
Các liên kết bị dính bởi WPML được xem trong trình chỉnh sửa Cổ điển
Các liên kết bị dính bởi WPML được xem trong trình chỉnh sửa Cổ điển

Người dùng của bạn sẽ không bao giờ nhìn thấy những liên kết “lạ” này. Thay vào đó, WPML sẽ thay thế chúng bằng các liên kết cố định hiện tại khi hiển thị các trang.

Sau khi kích hoạt mô-đun Liên kết đính kèm , bạn có thể kiểm soát những chuỗi mà nó xử lý. Để thực hiện việc này, hãy truy cập trang WPMLLiên kết cố định .

Liên kết đính kèm trước khi xử lý
Liên kết đính kèm trước khi xử lý

Theo mặc định, WPML sẽ chuyển tất cả các liên kết trong nội dung bài đăng thành các liên kết cố định. Bạn cũng có thể biến các liên kết trong widget và chuỗi thành các liên kết cố định.

WPML sẽ cho phép bạn thay thế hàng loạt tất cả các liên kết thông thường thành các liên kết cố định. Nó cũng sẽ báo cáo mọi liên kết bị hỏng hiện có và giúp khắc phục chúng.

Nếu bạn đã bật Liên kết đính kèm sau khi tạo một số nội dung, các liên kết trong nội dung hiện có đó sẽ không ngay lập tức được chuyển thành liên kết cố định.

Màn hình quản trị Liên kết đính kèm cho bạn biết lượng nội dung có thể bao gồm các liên kết bình thường (không cố định). WPML có thể quét nội dung đó và chuyển đổi tất cả các liên kết thành liên kết cố định. Bấm vào nút Quét để làm điều đó.

Bạn luôn có thể đưa các liên kết của mình trở lại liên kết cố định thông thường (không cố định) bằng cách nhấp vào Hoàn nguyên các URL cố định thành liên kết cố định .

Liên kết đến các trang bằng ngôn ngữ khác

Đôi khi, bạn có thể muốn chèn một liên kết đến một trang bằng ngôn ngữ khác. Vì Liên kết đính kèm tự động điều chỉnh các liên kết nên nó có thể ngăn bạn thực hiện việc này và thay vào đó, điều chỉnh liên kết để trỏ đến cùng một ngôn ngữ.

Để có thể thêm liên kết đến các trang bằng các ngôn ngữ khác, bạn cần thêm bộ lọc sau vào tệp tin.php của chủ đề.

Allow links to pages in other languages
add_filter( 'wpml_sl_blacklist_requests', 'wpml_sl_blacklist_requests', 10, 2 );

function wpml_sl_blacklist_requests( $blacklist, $sitepress ) {
    $blacklist[] = 'documentation';
    return $blacklist;
}

Trong đoạn mã trên, hãy sử dụng mảng $blacklist để chỉ định tất cả các phần mở rộng URL cho các trang bằng ngôn ngữ gốc mà bạn muốn liên kết tới.

Trong ví dụ của chúng tôi, chúng tôi muốn liên kết đến phiên bản tiếng Anh của các trang “Tài liệu” (sên “tài liệu”) và “Trình tạo trang” (sên “trình tạo trang”), vì vậy chúng tôi sử dụng hai dòng sau:

Example of specifying the list of URLs to allow linking to
$blacklist[] = 'documentation';

$blacklist[] = 'page-builders';

Xử lý các liên kết bên trong nội dung shortcode

Theo mặc định, plugin Liên kết đính kèm không tìm kiếm các liên kết được tạo bởi mã ngắn.

Nếu bạn có một mã ngắn trên trang tạo liên kết như ” ?page_id=XX “, nó sẽ được hiển thị cho người dùng của bạn mà không bị chuyển đổi thành liên kết cố định.

Để xử lý những nội dung shortcode này bằng Liên kết đính kèm , hãy thêm đoạn mã này vào tệp tin.php.

Handle links inside shortcode content
if ( class_exists( 'WPML_Sticky_Links' ) ) {
	global $WPML_Sticky_Links;
	add_filter( 'do_shortcode_tag', [ $WPML_Sticky_Links, 'show_permalinks' ], 0 );
}