Image default
Máy Tính

Cách Tùy Chỉnh Reddit Luôn Hiển Thị Bài Viết Mới Nhất (Không Còn Mặc Định “Best”)

Trong thế giới kỹ thuật số ngày nay, những phiền toái nhỏ khi duyệt web có thể tích tụ và gây ra sự khó chịu lớn. Đối với nhiều người dùng, việc Reddit mặc định sắp xếp bài viết theo chế độ “Best” (Tốt nhất) chính là một trong những rào cản lớn nhất đối với trải nghiệm mượt mà. May mắn thay, với một chút quyết tâm và một tiện ích mở rộng trình duyệt mạnh mẽ, bạn hoàn toàn có thể kiểm soát và tùy chỉnh lại luồng tin tức của mình, đưa “New” (Mới nhất) trở thành lựa chọn ưu tiên. Bài viết này sẽ hướng dẫn bạn từng bước cách thay đổi thứ tự bài viết Reddit sang chế độ “Mới nhất” một cách tự động, giúp bạn không bỏ lỡ bất kỳ nội dung quan trọng nào.

Tại Sao Việc Sắp Xếp “Best” Trên Reddit Lại Gây Khó Chịu?

Mặc dù gần đây “New Reddit” đã có những cải tiến đáng kể về giao diện người dùng, nhưng một vấn đề cốt lõi vẫn còn tồn tại và gây bức xúc cho không ít người dùng: thứ tự sắp xếp bài viết mặc định. Trên cả trang chủ lẫn các subreddit riêng lẻ, bài viết thường được hiển thị theo chế độ “Best”. Đây là một cài đặt không rõ ràng, hoạt động tương tự như thuật toán “For You” trên X (Twitter) hay feed trang chủ của YouTube, thường ưu tiên quảng bá nội dung thay vì đáp ứng nhu cầu cụ thể của người dùng.

Giao diện trang chủ Reddit với các bài viết được sắp xếp theo chế độ "Best" mặc định, cho thấy vấn đề cần khắc phục.Giao diện trang chủ Reddit với các bài viết được sắp xếp theo chế độ "Best" mặc định, cho thấy vấn đề cần khắc phục.

Có vô số lần bạn có thể bị thu hút bởi một tiêu đề hấp dẫn, nhưng lại nhanh chóng thất vọng khi nhận ra bài viết đó đã ra đời từ vài tuần hoặc thậm chí vài tháng trước. Ngay cả khi nhận ra vấn đề, việc phải thực hiện thêm hai lần nhấp chuột để chuyển từ “Best” sang “New” cũng đủ làm gián đoạn trải nghiệm và luồng công việc của bạn. Tuy nhiên, nhờ vào một giải pháp đơn giản nhưng hiệu quả, vấn đề này sẽ không còn là mối bận tâm nữa.

Giải Pháp Toàn Diện: Tùy Chỉnh Feed Reddit Bằng Tampermonkey và JavaScript

Nếu bạn có chút kiến thức về JavaScript, bạn có thể hình dung ra cách giải quyết vấn đề này. Ngôn ngữ lập trình này cho phép bạn thêm chức năng mới, thay đổi màu sắc, phông chữ hoặc thậm chí xóa bỏ nội dung không mong muốn trên một trang web. Mặc dù bạn cần quyền truy cập vào backend của website để những thay đổi này hiển thị cho mọi người, nhưng bạn hoàn toàn có thể sử dụng trình duyệt của mình để thực hiện các tùy chỉnh này cho trải nghiệm cá nhân.

Chìa khóa để thực hiện điều này là một tiện ích mở rộng trình duyệt cho phép bạn chạy mã JavaScript của riêng mình trên các trang web cụ thể. Trong bài viết này, chúng ta sẽ sử dụng Tampermonkey – một công cụ phổ biến và mạnh mẽ.

Trang tiện ích mở rộng Tampermonkey trên Chrome Web Store, minh họa quá trình tìm kiếm và cài đặt công cụ tùy chỉnh script.Trang tiện ích mở rộng Tampermonkey trên Chrome Web Store, minh họa quá trình tìm kiếm và cài đặt công cụ tùy chỉnh script.

Hầu hết các trình duyệt phổ biến như Chrome, Edge, Safari và Firefox đều có tính năng này được tích hợp sẵn hoặc thông qua tiện ích mở rộng. Tampermonkey có sẵn cho tất cả các trình duyệt lớn này, vì vậy đây là lựa chọn hàng đầu được khuyến nghị.

Để bắt đầu, hãy tải xuống Tampermonkey cho trình duyệt của bạn. Bạn có thể tìm thấy phiên bản Chrome tại đây: Chrome Tampermonkey.

Sau khi đã thêm và kích hoạt tiện ích mở rộng, hãy sử dụng menu của nó để chọn “Create a new script” (Tạo một script mới). Bạn sẽ thấy một giao diện tương tự như hình dưới đây, chứa một số mã mẫu (boilerplate JavaScript code).

Giao diện trình soạn thảo script của Tampermonkey khi tạo một userscript mới, hiển thị cấu trúc mã JavaScript mẫu cần chỉnh sửa.Giao diện trình soạn thảo script của Tampermonkey khi tạo một userscript mới, hiển thị cấu trúc mã JavaScript mẫu cần chỉnh sửa.

Hướng Dẫn Chi Tiết Mã JavaScript Để Thay Đổi Sắp Xếp Reddit (Trang Chủ)

Trong trình soạn thảo script của Tampermonkey, bạn sẽ thấy rất nhiều mã mẫu (boilerplate), phần lớn trong số đó là các chú thích và không ảnh hưởng đến chức năng chính. Điều quan trọng là bạn phải đảm bảo dòng @match trông giống như sau:

// @match https://www.reddit.com/*

Dòng này yêu cầu Tampermonkey chỉ chạy script trên trang web Reddit. Ký tự đại diện * có nghĩa là script sẽ chạy trên mọi trang của Reddit, nhưng mã script bên trong sẽ được thiết kế để chỉ tác động đến trang chủ chính.

Bây giờ, hãy thay thế dòng “Your code here…” bằng đoạn mã JavaScript thực tế sau đây:

function checkURL() {
    if (window.location.pathname === "/") {
        window.location.replace("//www.reddit.com/new");
    }
}

let currentUrl = location.href;
checkURL();

setInterval(() => {
    if (location.href !== currentUrl) {
        currentUrl = location.href;
        checkURL();
    }
}, 500);

Bạn không cần phải hiểu sâu sắc mọi chi tiết về đoạn mã này, nhưng tôi sẽ giải thích một vài phần chính:

  • function checkURL(): Hàm này thực hiện công việc chính. Đầu tiên, nó kiểm tra xem đường dẫn URL của trang (window.location.pathname) có phải là dấu gạch chéo đơn ("/") hay không. Nếu đúng, điều đó có nghĩa là bạn đang ở trang chủ. Sau đó, nó gọi window.location.replace("//www.reddit.com/new"), đơn giản là thêm "/new" vào cuối URL hiện tại. Thao tác này sẽ hướng trình duyệt của bạn tải lại trang chủ, nhưng với thứ tự sắp xếp theo bài viết mới nhất thay vì mặc định.
  • let currentUrl = location.href; checkURL();: Dòng này lưu trữ URL hiện tại và gọi hàm checkURL() ngay khi script được tải, đảm bảo trang chủ được sắp xếp đúng ngay từ đầu.
  • setInterval(() => { ... }, 500);: Phần còn lại của script đảm bảo rằng việc kiểm tra này diễn ra đều đặn: cứ nửa giây một lần (500 miliseconds). Lý tưởng nhất, việc kiểm tra chỉ cần diễn ra khi URL thay đổi và trang được tải lần đầu. Tuy nhiên, do cách Reddit tải các trang (sử dụng SPA – Single-Page Application, nơi nội dung thay đổi mà URL không tải lại hoàn toàn), script cần kiểm tra định kỳ. Đây là một phương pháp “brute force” (ép buộc), nhưng vì đoạn mã thực hiện rất ít công việc, nó không ảnh hưởng đáng kể đến hiệu suất.

Sau khi chèn mã, hãy lưu script của bạn và đóng tab Tampermonkey. Bây giờ, hãy chuyển sang Reddit và thử tải lại trang chủ. Bạn sẽ thấy rằng, thay vì feed “Best” mặc định, bạn đang xem feed “New” – một trải nghiệm vượt trội!

Mở Rộng Tùy Chỉnh: Áp Dụng Cho Cả Subreddit Và Tiềm Năng Khác

Bạn không cần phải thay đổi nhiều mã để áp dụng tính năng này cho các trang subreddit. Chỉ cần thêm một điều kiện nữa vào hàm checkURL(), xử lý các URL subreddit tương tự:

function checkURL() {
    let match;

    if (window.location.pathname === "/") {
        window.location.replace("//www.reddit.com/new");
    } else if (match = window.location.pathname.match("(/r/[^/]+)/$")) {
        window.location.replace("//www.reddit.com" + match[1] + "/new/");
    }
}

Kiểm tra này phức tạp hơn một chút vì bạn cần kiểm tra một mẫu URL có thể khớp với nhiều URL khác nhau, thay vì một URL cố định. Lệnh gọi window.location.pathname.match() sử dụng một biểu thức chính quy (regular expression – regex). Một lần nữa, các chi tiết cụ thể không quá quan trọng, nhưng điều mấu chốt là kiểm tra này khớp với các URL có dạng /r/[tên_subreddit]/ và thêm "/new/" vào cuối chúng.

Khi đã thiết lập tiện ích mở rộng này, thế giới tùy chỉnh sẽ mở ra trước mắt bạn, miễn là bạn có thể học hỏi thêm một chút về JavaScript. Với Tampermonkey, hoặc một tiện ích mở rộng tương tự, cùng với sự kiên trì, bạn có thể khắc phục vô vàn vấn đề với các trang web bạn sử dụng thường xuyên. Bạn có thể loại bỏ các yếu tố không mong muốn, sắp xếp lại điều hướng, buộc chế độ tối, ngăn chặn video tự động phát, và nhiều hơn thế nữa.

Giới hạn thực sự duy nhất phụ thuộc vào cấu trúc của từng trang web. Ví dụ, X (Twitter) sử dụng cùng một URL cho cả chế độ “For You” và “Following”, khiến việc tùy chỉnh trở nên phức tạp hơn nhiều. Mặt khác, YouTube lại “dễ tính” hơn, với các URL riêng biệt cho trang chủ và feed đăng ký.

Vì vậy, việc tùy chỉnh các trang web đòi hỏi một chút tìm hiểu và thử nghiệm, nhưng những cải tiến bạn có thể thêm vào chắc chắn sẽ xứng đáng với thời gian của bạn.

Kết Luận

Việc Reddit mặc định hiển thị bài viết theo chế độ “Best” có thể gây ra không ít phiền toái, làm giảm đi trải nghiệm duyệt tin tức của người dùng. Tuy nhiên, như chúng ta đã thấy, vấn đề này hoàn toàn có thể được khắc phục một cách hiệu quả và tự động bằng cách tận dụng sức mạnh của tiện ích mở rộng Tampermonkey cùng một vài dòng mã JavaScript đơn giản. Bằng cách áp dụng giải pháp này, bạn không chỉ đảm bảo rằng mình luôn cập nhật những nội dung mới nhất trên trang chủ và các subreddit yêu thích, mà còn khám phá ra tiềm năng vô hạn của việc cá nhân hóa trải nghiệm web.

Đừng ngần ngại thử nghiệm và áp dụng những kiến thức này để biến môi trường duyệt web của bạn trở nên tối ưu và phù hợp nhất với nhu cầu cá nhân. Bạn đã tùy chỉnh thành công Reddit chưa? Hay bạn có những mẹo tùy chỉnh web thú vị nào khác muốn chia sẻ? Hãy để lại bình luận của bạn dưới đây để cùng thảo luận và khám phá thêm những khả năng vô tận của công nghệ!

Related posts

Acer Ra Mắt Predator XB323QK V4 (4K) & Nitro XV240 F6 (600Hz)

Administrator

Tối Ưu Năng Suất Với Sticky Notes: Mẹo Sử Dụng Hiệu Quả Cho Người Dùng Windows

Administrator

Hướng Dẫn Tự Động Khởi Động Lại PC Windows 11 Định Kỳ Hiệu Quả

Administrator