Trang chủ WordpressWordpress Plugin Thêm hiệu ứng Infinite Scroll vào WordPress dễ dàng

Thêm hiệu ứng Infinite Scroll vào WordPress dễ dàng

bởi Thạch Phạm

Infinite Scroll là hiệu ứng tải các bài viết kế tiếp bằng kỹ thuật AJAX sau khi cuộn trang tới một vị trí nào đó, chẳng hạn như kéo tới chân trang nó sẽ hiển thị các bài tiếp theo mà không cần bấm sang trang tiếp.

Hiệu ứng này nhìn chung sẽ giúp website bạn chuyên nghiệp hơn, dễ dàng đọc các bài kế tiếp mà không phải click nhiều lần. Nếu bạn quan tâm đến cách làm hiệu ứng tải trang Infinite Scroll thì bài viết này sẽ hướng dẫn bạn thêm hiệu ứng này dễ dàng bằng plugin có sẵn.

Nhược điểm của Infinite Scroll

Trước khi bắt tay vào làm, bạn cần nên biết qua một vài nhược điểm của Infinite Scroll để xem bạn có thích hợp sử dụng hay không.

  • Phụ thuộc vào Javascript, nó sẽ đơ nếu trình duyệt tắt Javascript.
  • Giảm tỷ lệ pageview của bạn.
  • Nếu bạn có nhiều nội dung, không nên dùng hiệu ứng này vì đôi khi khách cần nhảy đến một trang nào đó.
  • Không xem được footer của website.

Hướng dẫn cài Infinite Scroll vào WordPress

Ở bài này mình sẽ sử dụng plugin Infinite-Scroll, hãy tải về và cài vào website của bạn nhé.

Sau khi cài xong, hãy vào Settings -> Infinite Scroll bạn sẽ thấy như thế này:

infinitescroll-setting

Nếu bạn không hiểu các tham số tùy chọn trong đó thì cũng đừng lo lắng, mình sẽ giải thích ngay đây. Tất cả các tham số đó là nơi bạn nhập các vùng chọn CSS có trong theme để nó xác định được các phần tử trong theme.

Hãy nhớ rằng, ID (id=”xx”) sẽ viết dạng #ten-id, và class (class=”xxx”) sẽ được viết dạng .ten-class nhé nếu bạn chưa biết CSS.

Để biết từng vùng chọn, hãy dùng tính năng Inspect Element có trong Google Chrome để xem bằng cách ấn chuột phải lên từng phần và chọn Inspect Element.

Content Selector

Vùng chọn cho toàn bộ khu vực hiển thị nội dung bài viết mới ngoài trang chủ (và thường là nó sẽ giống ở các trang category, tag).

infinitescroll-content

Như ảnh thì mình có vùng chọn là #site-content .

Navigation Selector

Vùng chọn của khu vực phân trang trên theme, dù là phân trang dạng số hay dạng trang thường thì vẫn được nhé.

Như ảnh trên thì mình có vùng chọn là .navigation.

infinitescroll-navigation

Next Selector

Nút sang trang mới, hay đúng hơn là đường link bên trong khung phân trang.

Như ảnh trên thì mình có vùng chọn là .nav-links a

Item Selector

Vùng chọn CSS cho mỗi bài post ngoài trang chủ. Mỗi bài post nó đều có những class chung như ảnh.

infinitescroll-item

Như ảnh trên thì mình sẽ có vùng chọn là #site-content .post. Viết hai cấp như vậy cho khỏi sợ xung đột với các thành phần khác.

Nếu bạn dùng các theme mặc định thì không cần sửa lại vì mặc định nó đã điền sẵn rồi.

Sau khi nhập xong các vùng chọn, hãy ấn Save và ra trang chủ xem kết quả.

infinitescroll-loading

Khi hoạt động, nó sẽ ẩn nút phân trang của bạn đi và thay vào là hiệu ứng tải bài kế tiếp khi kéo xuống. Số bài tải ra sẽ bằng số bài hiển thị trên mỗi trang mà bạn có thể thiết lập trong Settings -> Reading.

Tham khảo plugin jQuery để làm thủ công

Có thể bạn quan tâm

Hiện tại blog tạm đóng bình luận vì mình cần tập trung thời gian vào cập nhật bài viết. Bình luận sẽ mở ra cho đến khi mình sẵn sàng.