Phân trang là một trong những kỹ thuật quan trọng giúp tối ưu trải nghiệm người dùng và SEO cho website WordPress. Thay vì hiển thị toàn bộ nội dung trong một trang dài, phân trang sẽ chia content thành nhiều trang ngắn hơn và cho phép người đọc dễ dàng điều hướng. May mắn là WordPress hỗ trợ tính năng phân trang ngay trong bản Core thông qua hàm paginate_links(). Chỉ với vài dòng code, bạn có thể áp dụng phân trang một cách dễ dàng mà không cần dùng thêm plugin. Trong bài viết này, Plugin.com.vn sẽ hướng dẫn chi tiết cách sử dụng code phân trang WordPress để bạn có thể nắm rõ quy trình và áp dụng một cách dễ dàng nhất.
1. Giới thiệu về phân trang trong WordPress
Phân trang là kỹ thuật chia nội dung website thành nhiều trang nhỏ thay vì để trên một trang dài. Kỹ thuật này giúp cải thiện trải nghiệm người dùng, tối ưu hóa cho công cụ tìm kiếm (SEO) và quản lý nội dung website một cách hiệu quả hơn.
Với phân trang, thay vì đọc một trang dài hàng nghìn từ, người dùng sẽ đọc các trang ngắn hơn và dễ tiếp cận hơn. Họ cũng có thể dễ dàng điều hướng đến các phần khác nhau của nội dung thông qua các nút trang tiếp theo/trang trước.
Đối với người quản trị website, phân trang giúp quản lý nội dung đơn giản hơn. Thay vì một trang dài hàng nghìn từ khó chỉnh sửa, nội dung được chia thành các trang ngắn, dễ quản lý và chỉnh sửa hơn. Phân trang cũng cho phép dễ dàng nhúng quảng cáo vào giữa các trang.
WordPress hỗ trợ tính năng phân trang ngay trong bản Core (cốt lõi) của nó. Bạn có thể dễ dàng áp dụng phân trang cho các bài viết, trang sản phẩm, kết quả tìm kiếm mà không cần cài đặt thêm plugin.
2. Có nên sử dụng code phân trang trong WordPress?
Việc sử dụng code phân trang trong WordPress hoàn toàn có thể và mang lại nhiều lợi ích. Tuy nhiên, tùy thuộc vào từng trường hợp cụ thể, bạn có thể cân nhắc giữa việc sử dụng code thủ công, plugin hoặc các tính năng có sẵn của theme.
Lợi ích của việc sử dụng code phân trang trong WordPress
Sử dụng code phân trang trong WordPress mang đến cho người dùng những lợi ích đặc biệt như sau:
Cải thiện trải nghiệm người dùng
Phân trang mang lại trải nghiệm tốt hơn cho người đọc website của bạn:
- Trang ngắn sẽ dễ đọc và dễ cuộn chuột hơn so với trang dài. Người đọc không bị mệt mỏi với đoạn văn dài.
- Người đọc dễ dàng tìm thấy nội dung mà họ quan tâm mà không cần cuộn chuột qua hàng nghìn từ.
- Người đọc có xu hướng nhấp vào quảng cáo nhiều hơn trên các trang ngắn so với trang dài.
- Phân trang giúp người đọc dễ dàng theo dõi nội dung dài và truy cập lại sau này. Họ có thể đánh dấu trang đã đọc để tiếp tục sau.
- Thời gian người đọc dừng lại trên trang web của bạn sẽ lâu hơn nhờ vào việc phải click qua nhiều trang để đọc hết bài.
Như vậy, phân trang sẽ giúp người đọc dễ tiếp cận nội dung hơn, gia tăng tương tác và cải thiện trải nghiệm người dùng trên website của bạn.
Tối ưu hóa cho công cụ tìm kiếm (SEO)
Phân trang cũng mang lại những lợi ích SEO sau:
- Nội dung được chia nhỏ sẽ có nhiều cơ hội hơn để xuất hiện top trang tìm kiếm với nhiều từ khóa liên quan. Thay vì chỉ có 1 trang duy nhất, giờ sẽ có nhiều trang ngắn hơn, mỗi trang tối ưu hóa cho một số từ khóa nhất định.
- Mỗi trang con sau khi phân trang đều có thể tối ưu meta title và description riêng, thay vì chỉ 1 meta title duy nhất. Điều này giúp tối ưu hóa hơn cho từng phần nội dung.
- Trang ngắn hơn sẽ giảm tải cho website, giúp website load nhanh hơn. Tốc độ load nhanh là một yếu tố quan trọng trong thuật toán xếp hạng của Google.
- Việc người đọc click qua nhiều trang để đọc hết bài sẽ giúp website có nhiều sessions và pageviews hơn. Đây cũng là những yếu tố SEO quan trọng mà Google tin tưởng.
Như vậy, với nhiều trang ngắn thay vì một trang dài, website của bạn sẽ có cơ hội xuất hiện top Google nhiều hơn với nhiều từ khóa liên quan.
Quản lý nội dung website hiệu quả hơn
Đối với người quản trị website, phân trang cũng mang lại những tiện ích sau:
- Nội dung được chia nhỏ nên dễ dàng quản lý và chỉnh sửa hơn. Bạn có thể dễ dàng cập nhật, thêm/bớt nội dung mà không sợ ảnh hưởng lớn đến cấu trúc trang.
- Giao diện backend sẽ thân thiện với người viết bài hơn khi họ không phải scroll qua hàng nghìn từ để chỉnh sửa nội dung.
- Bạn có thể dễ dàng bổ sung quảng cáo vào giữa các trang để tăng doanh thu.
- Phân trang giúp đỡ người viết bài tạo nội dung dễ tiếp cận và dễ đọc hơn. Họ cũng có thể theo dõi analytics từng phần để cải thiện nội dung.
Như vậy, với khả năng quản lý và chỉnh sửa nội dung dễ dàng, phân trang giúp website của bạn có nội dung chất lượng và thân thiện với người dùng hơn.
Khi nào nên sử dụng code phân trang WordPress?
Sau đây là một số trường hợp thường gặp nên sử dụng phân trang để tối ưu trải nghiệm người dùng và SEO:
- Áp dụng cho bài viết dài: Bài viết quá dài (trên 1000 từ) sẽ khó đọc và dễ làm người đọc bỏ cuộc giữa chừng. Phân trang sẽ giúp bài viết dễ tiếp cận hơn. Mỗi trang nên có 300-500 từ là lý tưởng.
- Áp dụng cho danh sách/bộ sưu tập lớn: Nếu bạn có một danh sách lớn các sản phẩm, bài viết, videos, etc. thì nên phân trang để tránh hiển thị quá nhiều nội dung trên một trang. Mỗi trang nên hiển thị khoảng 10-20 items là vừa phải.
- Trang kết quả tìm kiếm: Trang kết quả tìm kiếm có hàng trăm, hàng nghìn items cũng nên phân trang để người dùng dễ tìm kiếm hơn. Bạn nên chia khoảng 20-50 kết quả tìm kiếm cho mỗi trang.
- Trang sản phẩm: Đối với trang chi tiết sản phẩm có nhiều nội dung và hình ảnh minh họa, bạn nên chia thành các tab/trang con để người đọc dễ tiếp cận. Ví dụ tách riêng phần mô tả, đánh giá, hướng dẫn sử dụng, etc.
- Trang có nội dung dài: Nói chung, bất kỳ trang nào trên website của bạn mà có quá nhiều nội dung, khiến chiều dài trang quá lớn thì đã đến lúc bạn nên cân nhắc tách nội dung ra thành nhiều trang ngắn hơn.: Việc quyết định số lượng nội dung/trang phụ thuộc vào từng trường hợp cụ thể. Nhưng nói chung, hãy chia nội dung sao cho mỗi trang không quá 800-1000 từ là hợp lý.
Những nhược điểm cần lưu ý khi sử dụng phân trang
Mặc dù mang lại nhiều lợi ích, phân trang cũng có một số hạn chế cần lưu ý:
Có thể làm chậm tốc độ load trang
Việc chia content ra nhiều trang sẽ khiến người dùng phải chờ đợi nhiều lần để click sang trang tiếp theo. Nếu trang của bạn đã load chậm thì điều này sẽ càng trầm trọng hơn. Để khắc phục, bạn nên sử dụng các kỹ thuật tối ưu hóa website như lazy load, cache, CDN, nén HTML, CSS, JS, ảnh, etc. Ngoài ra, nên sử dụng phân trang Ajax để chỉ load thêm phần nội dung mới mà không tải lại toàn bộ trang.
Có thể ảnh hưởng đến SEO nếu không cẩn thận
Nếu bạn tạo các trang phân trang với URL không thân thiện (vd: ?page=2) thì có thể khiến trang bị trùng lặp nội dung và bị Google phạt. Cách tốt nhất là nên tạo các trang phân trang với URL đẹp và duy nhất để tránh bị nhầm lẫn. Ví dụ:
website.com/bai-viet
website.com/bai-viet/trang-2
website.com/bai-viet/trang-3
Bạn cũng nên sử dụng Sitemap để liệt kê các trang phân trang cho Google.
Người dùng có thể khó chịu khi phải click nhiều
Một số người dùng có thể cảm thấy khó chịu khi phải click qua nhiều trang để đọc hết bài viết. Do đó, bạn cần cân nhắc kỹ để phân chia nội dung hợp lý, tránh tách quá nhiều trang. Ngoài ra, nên sử dụng phân trang Ajax để click chuyển trang ít hơn.
Cần nhiều công sức hơn để quản lý nội dung
Phân trang khiến bạn phải quản lý nhiều trang hơn thay vì một trang duy nhất. Điều này đòi hỏi nhiều thời gian và công sức hơn trong quá trình biên tập nội dung. Tuy nhiên, nhờ công nghệ hiện đại, bạn có thể sử dụng các công cụ hỗ trợ để giảm bớt công việc này. Ví dụ sử dụng các page builder để dễ dàng nhân bản layout cho các trang phân trang.
Như vậy, nếu áp dụng hợp lý, phân trang vẫn mang lại nhiều lợi ích vượt trội so với những hạn chế nhỏ. Bạn cần cân nhắc kỹ càng trước khi quyết định áp dụng để đạt hiệu quả cao nhất.
3. Cách sử dụng code phân trang trong WordPress
Có 2 cách chính để thêm phân trang vào WordPress:
Sử dụng hàm phân trang có sẵn của WordPress
WordPress cung cấp sẵn hàm paginate_links()
giúp bạn dễ dàng phân trang nội dung. Đây là cách đơn giản và nhanh chóng để thêm phân trang mà không cần cài đặt thêm plugin. Giới thiệu hàm paginate_links()
paginate_links()
là hàm phân trang mặc định của WordPress, cho phép bạn:
- Phân trang các post, page, custom post, taxonomy, comments
- Tuỳ chỉnh giao diện phân trang (CSS, markup)
- Thêm Javascript vào phân trang để tạo hiệu ứng JS
- Các tuỳ chọn phân trang nâng cao: số trang, trang hiện tại, prev/next, etc.
Cách sử dụng cơ bản
Đoạn code đơn giản sau sẽ phân trang các bài viết (posts) trong category News với 10 bài mỗi trang:
<?php
// Lấy số trang hiện tại
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
// Câu query lấy posts
$args = [
'post_type' => 'post',
'posts_per_page' => 10,
'paged' => $paged,
'category_name' => 'news',
];
// Query lấy posts phân trang
$posts = new WP_Query($args);
// Vòng lặp hiển thị posts
if ($posts->have_posts()) {
while ($posts->have_posts()) {
$posts->the_post();
// code hiển thị post
}
// Hiển thị phân trang
echo paginate_links(array(
'total' => $posts->max_num_pages
));
}
?>
Như vậy, chỉ với vài dòng code đơn giản, bạn đã có thể phân trang posts trong WordPress mà không cần dùng thêm plugin.
Tùy chỉnh giao diện phân trang
Bạn có thể dễ dàng tuỳ chỉnh giao diện phân trang bằng CSS như sau:
.pagination {
text-align: center;
}
.pagination a {
display: inline-block;
padding: 5px 10px;
background: #f5f5f5;
border-radius: 2px;
color: #333;
}
.pagination a:hover {
background: #eee;
}
Sau đó bọc thẻ phân trang trong <div class="pagination">
để áp dụng CSS trên. Ngoài ra, bạn cũng có thể chỉnh sửa các thẻ HTML mặc định của phân trang thông qua các tham số prev_text
, next_text
, etc.
Các tuỳ chọn nâng cao
Một số tuỳ chọn phân trang hay dùng:
total
: Tổng số trang.current
: Trang hiện tại.show_all
: Hiển thị tất cả trang (khôngtruncate).end_size
: Số trang hiển thị đầu và cuối.mid_size
: Số trang hiển thị giữa.prev_next
: Cho phép Next/Prev.prev_text
: Custom text nút Prev.next_text
: Custom text nút Next.
Ví dụ sử dụng một số tuỳ chọn phân trang:
paginate_links(array(
'total' => 100,
'current' => 5,
'end_size' => 2,
'mid_size' => 3,
'prev_text' => __('« Trước'),
'next_text' => __('Sau »'),
));
Như vậy, với paginate_links()
, bạn có thể dễ dàng phân trang trong WordPress mà không cần cài đặt plugin.
Sử dụng Plugin hỗ trợ phân trang
Nếu muốn những tính năng phân trang nâng cao hơn, bạn có thể cài đặt các plugin phân trang như:
- WP-PageNavi: Phân trang đơn giản, nhẹ, có AJAX.
- WP-Paginate: Nhiều skin phân trang đẹp, dễ dùng.
- Pagination: Tùy chọn phân trang mạnh mẽ.
- AJAX Load More: Phân trang tải thêm bằng AJAX.
- Infinite Scroll: Tự động tải thêm khi cuộn chuột.
Các plugin trên đều cung cấp shortcode để nhúng phân trang vào bài viết. Bạn chỉ cần:
- Bước 1: Tìm và cài đặt plugin phân trang.
- Bước 2: Kích hoạt plugin và cài đặt các tuỳ chọn phù hợp.
- Bước 3: Sử dụng shortcode của plugin để hiển thị phân trang.
Ví dụ shortcode cơ bản của WP-PageNavi:
[wp_pagenavi]
Như vậy, chỉ với một dòng shortcode, bạn đã có thể áp dụng phân trang nâng cao từ các plugin chuyên dụng.
>> Tham khảo thêm: Hướng dẫn tạo Phân trang cho Website WordPress
4. Một số lưu ý khi sử dụng code phân trang
Để đảm bảo phân trang hoạt động tốt, bạn cần lưu ý một số vấn đề sau:
Kiểm tra tính tương thích với theme và plugin
Một số theme và plugin có thể gây xung đột lỗi với code phân trang. Vì vậy, bạn nên test thử trước khi áp dụng trên website thật. Nếu gặp lỗi, hãy liên hệ nhà phát triển để tìm giải pháp khắc phục.
Tối ưu hóa để tránh làm chậm website
Phân trang có thể làm chậm website nếu không tối ưu hóa. Bạn cần áp dụng các kỹ thuật sau:
- Sử dụng phân trang Ajax để tránh tải lại toàn bộ trang.
- Tối ưu hóa hình ảnh, JS, CSS để giảm dung lượng và tăng tốc độ load.
- Enable cache để trang được lưu vào bộ nhớ tạm, load nhanh hơn.
- Sử dụng CDN để tối ưu tốc độ tải tài nguyên.
Theo dõi hiệu quả sau khi áp dụng
Sau khi áp dụng phân trang, bạn cần theo dõi các chỉ số sau để đánh giá hiệu quả:
- Thời gian lưu trang bình quân của người dùng
- Tỉ lệ nhấp chuột vào quảng cáo
- Vị trí xếp hạng trên công cụ tìm kiếm
- Tốc độ load trang và thời gian phản hồi
Dựa trên kết quả phân tích, bạn có thể điều chỉnh lại cách phân chia nội dung cho phù hợp.
5. Kết luận về sử dụng code phân trang
Phân trang giúp cải thiện trải nghiệm người dùng, tối ưu hóa SEO và quản lý nội dung website hiệu quả hơn. WordPress hỗ trợ phân trang ngay trong Core thông qua hàm paginate_links()
mạnh mẽ và linh hoạt. Ngoài ra, bạn có thể sử dụng các plugin phân trang nâng cao để có thêm nhiều tuỳ chọn thú vị. Tuy nhiên, khi áp dụng phân trang cũng cần lưu ý một số vấn đề như tương thích, tốc độ load, theo dõi hiệu quả để đạt kết quả tốt nhất. Hi vọng bài viết trên đã cung cấp thông tin hữu ích để giúp bạn áp dụng code phân trang WordPress thành công!