Nếu vì một lý do nào đó, bạn muốn bài viết không hiển thị trên website WordPress, chỉ những người có link mới truy cập được, thì hướng dẫn này là dành cho bạn. Chỉ với vài bước đơn giản, bạn đã có thể ẩn bài viết khỏi trang chủ (homepage/ frontpage), chuyên mục (category), thẻ (tag), trang kết quả tìm kiếm (search) và trang tác giả (author page). Hãy dành 1 phút để cùng WP Căn bản tìm hiểu ngay sau đây.
Phương pháp 1. Ẩn bài đăng WordPress khỏi Trang chủ bằng cách sử dụng Plugin
Phương pháp này dễ dàng hơn, và nó được khuyến khích cho người mới bắt đầu.
Điều đầu tiên bạn cần làm là cài đặt và kích hoạt plugin WordPress Hide Post .
Khi plugin được kích hoạt, hãy tiếp tục và chỉnh sửa bài đăng bạn muốn ẩn. Bạn sẽ thấy phần ‘Ẩn bài viết mới ở cột bên phải của trình chỉnh sửa.
Nhấp vào nó sẽ tiết lộ các tùy chọn plugin. Bạn có thể ẩn bài đăng trên trang đầu và trang blog, danh mục hoặc trang thẻ, trang tác giả và kết quả tìm kiếm trang web.
Chỉ cần chọn các tùy chọn bạn thích và sau đó lưu bài viết của bạn.
Tùy thuộc vào các tùy chọn bạn đã chọn, bây giờ bạn có thể truy cập các trang đó và bài đăng cụ thể đó sẽ không được liệt kê.
Tất cả người dùng có URL bài đăng trực tiếp ( permalink ) vẫn có thể nhìn thấy nó bằng cách nhập URL.
Trong khi phương pháp này là dễ nhất, nó thiếu một số tùy chọn mạnh mẽ.
Ví dụ: bạn không thể ẩn một trang hoặc loại bài đăng tùy chỉnh như sản phẩm WooCommerce . Nó cũng không có tùy chọn để ẩn bài đăng khỏi nguồn cấp dữ liệu RSS của WordPress .
Phương pháp 2. Ẩn thủ công các bài đăng và trang WordPress
Phương pháp này yêu cầu bạn thêm mã vào trang web WordPress của bạn. Nếu bạn chưa làm điều này trước đây thì hãy xem hướng dẫn của chúng tôi về cách sao chép và dán đoạn mã trong WordPress .
WordPress sử dụng truy vấn cơ sở dữ liệu để tìm nạp và hiển thị các bài đăng dựa trên trang mà người dùng đang xem. Nó cũng cung cấp các hook tích hợp để sửa đổi truy vấn trước khi chạy nó.
Chúng tôi sẽ sử dụng các móc nối đó để sửa đổi truy vấn WordPress và ẩn các bài đăng, trang và loại bài đăng tùy chỉnh trong các phần khác nhau của WordPress.
Bạn có thể thêm mã tùy chỉnh bằng cách sử dụng plugin đoạn mã an toàn hơn và không phá vỡ trang web của bạn. Ngoài ra, bạn có thể thêm mã tùy chỉnh để của chủ đề của bạn functions.php tập tin hoặc một plugin của trang web cụ thể .
Bạn cũng sẽ cần ID của bài đăng hoặc các trang mà bạn muốn ẩn. Chúng tôi có một hướng dẫn nhanh về cách tìm ID bài đăng trong WordPress cho biết cách lấy thông tin này.
Về cơ bản, bạn chỉ có thể chỉnh sửa một bài đăng hoặc trang để xem ID của nó trong thanh địa chỉ của trình duyệt.
Điều đó đang được nói, hãy đi sâu vào phần mã.
Ẩn bài viết hoặc trang WordPress khỏi trang chủ
Đoạn mã sau sử dụng thẻ điều kiện is_home () để tìm hiểu xem người dùng có đang xem trang chủ hay không. Nếu có, thì nó loại trừ ID bài đăng khỏi truy vấn.
1
2
3
4
5
6
|
function wpb_exclude_from_home( $query ) { if ( $query ->is_home() ) { $query ->set( 'post__not_in' , array (1737, 1718)); } } add_action( 'pre_get_posts' , 'wpb_exclude_from_home' ); |
Đừng quên thay thế ID bên trong mảng bằng ID thực tế của bài đăng hoặc trang mà bạn muốn loại trừ.
Ẩn bài viết hoặc trang WordPress khỏi RSS Feed
Nếu bạn muốn ẩn một bài đăng WordPress khỏi trang chủ cũng như nguồn cấp dữ liệu RSS của WordPress, thì bạn chỉ cần sử dụng thẻ điều kiện is_feed trong mã.
1
2
3
4
5
6
|
function wpb_exclude_from_feed( $query ) { if ( $query ->is_feed() ) { $query ->set( 'post__not_in' , array (1737, 1718)); } } add_action( 'pre_get_posts' , 'wpb_exclude_from_feed' ); |
Bây giờ nếu bạn đã đăng nhập với tư cách quản trị viên và cố gắng truy cập nguồn cấp dữ liệu RSS WordPress của mình, thì bạn vẫn sẽ thấy các bài đăng được liệt kê ở đó. Những người dùng khác sẽ không thể xem các bài đăng bị loại trừ khi họ xem nguồn cấp dữ liệu RSS của bạn.
Ẩn bài đăng hoặc trang WordPress khỏi tìm kiếm
Bây giờ, nếu bạn muốn ẩn các bài đăng cụ thể khỏi tìm kiếm trang web WordPress thì sao? Để làm điều đó, bạn chỉ cần thêm thẻ điều kiện is_search vào mã.
1
2
3
4
5
6
|
function wpb_exclude_from_search( $query ) { if ( $query ->is_search() ) { $query ->set( 'post__not_in' , array (1737, 1718)); } } add_action( 'pre_get_posts' , 'wpb_exclude_from_search' ); |
Bây giờ bạn có thể truy cập trang web của bạn và tìm kiếm các bài đăng bạn muốn ẩn. Mặc dù các bài đăng này là công khai, chúng sẽ không xuất hiện trong kết quả tìm kiếm.
Ẩn bài đăng hoặc trang WordPress khỏi Lưu trữ
Làm thế nào về việc ẩn các bài đăng hoặc trang WordPress cụ thể khỏi các trang lưu trữ như danh mục, thẻ và lưu trữ ngày? Để làm điều đó, chúng tôi sẽ sử dụng thẻ điều kiện is_archive ().
1
2
3
4
5
6
|
function wpb_exclude_from_archives( $query ) { if ( $query ->is_archive() ) { $query ->set( 'post__not_in' , array (1737, 1718)); } } add_action( 'pre_get_posts' , 'wpb_exclude_from_archives' ); |
Ẩn bài đăng hoặc trang WordPress từ mọi nơi
Cho đến nay chúng ta đã học được cách ẩn một bài đăng hoặc trang WordPress khỏi các khu vực cụ thể. Bây giờ, những gì về việc hoàn toàn ẩn một bài viết WordPress từ tất cả các lĩnh vực này cùng một lúc?
Để làm điều đó, bạn có thể kết hợp tất cả các thẻ có điều kiện mà chúng tôi đã sử dụng trước đó trong một đoạn mã.
1
2
3
4
5
6
|
function wpb_exclude_from_everywhere( $query ) { if ( $query ->is_home() || $query ->is_feed() || $query ->is_search() || $query ->is_archive() ) { $query ->set( 'post__not_in' , array (1737, 1718)); } } add_action( 'pre_get_posts' , 'wpb_exclude_from_everywhere' ); |
Mã này sẽ ẩn các bài đăng nhất định từ trang chủ, nguồn cấp dữ liệu RSS, kết quả tìm kiếm và trang lưu trữ.
Kiểm soát khả năng hiển thị nội dung trong WordPress
Bạn có thể ẩn các bài đăng hoặc trang WordPress bằng hai phương pháp chúng tôi đã mô tả ở trên. Hãy trả lời một số câu hỏi thường gặp nhất về các tùy chọn kiểm soát hiển thị nội dung trong WordPress.
Những phương pháp này hoàn toàn ẩn nội dung?
Không hoàn toàn không.
Điều này cũng sẽ không hoạt động nếu một plugin WordPress sử dụng truy vấn tùy chỉnh bỏ qua kiểm tra của bạn và tiết lộ nội dung bạn đang cố gắng che giấu.
Một cách tiếp cận tốt hơn sẽ là mật khẩu bảo vệ một bài đăng để chỉ những người dùng có mật khẩu mới có thể xem nó.
Bạn cũng có thể tạo một bài đăng riêng tư chỉ hiển thị cho quản trị viên, biên tập viên và tác giả trên trang web của bạn.
Tôi có thể sử dụng các phương pháp này để tạo nội dung cho người dùng cụ thể không?
Không, các phương pháp này không cho phép bạn chia sẻ nội dung hiệu quả với người dùng cụ thể. Một cách tiếp cận tốt hơn sẽ là sử dụng plugin thành viên WordPress .
Các plugin thành viên như MemberPress cho phép bạn tạo và xuất bản nội dung bị hạn chế. Bạn thậm chí có thể bán các gói thuê bao để truy cập nội dung cao cấp.
Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. 🙂