Cách ẩn bài đăng khỏi trang chủ WordPress

Bạn đã bao giờ muốn ẩn một bài đăng blog khỏi trang chủ WordPress của mình hoặc trang lưu trữ blog chưa?

Trong khi bạn có thể đặt mật khẩu bài đăng WordPress hoặc chuyển chế độ riêng tư, nhưng trong một số trường hợp, bạn chỉ muốn ẩn bài đăng khỏi trang chủ của mình trong khi vẫn cho phép người khác xem bài nếu họ có link trực tiếp.

Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách ẩn bài đăng khỏi các trang được chọn trong WordPress như trang chủ, lưu trữ danh mục, kết quả tìm kiếm, v.v.

Cách 1. Ẩn bài đăng WordPress khỏi trang chủ bằng cách sử dụng Plugin

Phương pháp này khá dễ dàng cho những 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. Để biết thêm chi tiết, hãy xem hướng dẫn từng bước của chúng tôi về cách cài đặt plugin WordPress.

Khi plugin được kích hoạt, hãy tiếp tục chỉnh sửa bài đăng bạn muốn ẩn. Bạn sẽ thấy phần “Ẩn bài viết” hiển thị ở cột bên phải.

Khi bạn nhấp vào nút này, bạn sẽ thấy danh sách 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 tab, trang tác giả và kết quả tìm kiếm trang web.

Hãy chọn các tùy chọn bạn muốn sử dụng 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 trang web và bài đăng 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.

Ví dụ: bạn không thể ẩn một trang hoặc bài đăng tùy chỉnh như WooCommerce. Nó cũng không có tùy chọn để ẩn bài đăng khỏi WordPress RSS feed.

Cách 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 code 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 database query để 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 built-in hooks để sửa đổi query trước khi chạy.

Chúng tôi sẽ sử dụng hook để sửa đổi WordPress query 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 code tùy chỉnh bằng cách sử dụng code snippets plugin 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 code tùy chỉnh vào functions.php của chủ đề hoặc site-specific plugin.

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 sẽ giúp ích cho bạn.

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.

Nào, chúng ta cùng chuyển tới phần tiếp theo.

Ẩn bài viết  WordPress khỏi trang chủ

Đoạn code sau sử dụng is_home () conditional tag để 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 query.

1 function wpb_exclude_from_home($query) {
2      if ($query->is_home() ) {
3          $query->set('post__not_in', array(1737, 1718));
4      }
5}
6 add_action('pre_get_posts', 'wpb_exclude_from_home');

Đừng quên thay thế ID trong mảng bằng ID thực của bài đăng hoặc trang mà bạn muốn ẩn.

.

Ẩ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 is_feed conditional tag trong code.

1 function wpb_exclude_from_feed($query) {
2     if ($query->is_feed() ) {
3          $query->set('post__not_in', array(1737, 1718));
4      }
5 }
6 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à 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ị ẩn 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 trang web

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 is_search conditional tag vào code.

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 đẻ việc ẩn các bài đăng WordPress cụ thể khỏi các trang lưu trữ như danh mục, tag và lưu trữ ngày? Để làm điều đó, chúng ta sẽ sử dụng is_archive() conditional tag.

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 ở 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 mọi nơi cùng một lúc?  

Để làm điều đó, bạn phải kết hợp tất cả các conditional tags mà chúng ta đã sử dụng trước đó trong một đoạn code.

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');

Code này sẽ ẩn hoàn toàn các bài đăng nhất định nằm trong 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 cách chúng tôi đã giới thiệu ở 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 cách này hoàn toàn ẩn nội dung?

Không.

Ví dụ: các công cụ tìm kiếm có thể đã thu thập dữ liệu và lập chỉ mục bài đăng trước khi bạn có thể ẩn bài đăng đó. Nếu bạn muốn ngăn công cụ tìm kiếm, hãy xem hướng dẫn của chúng tôi về cách ẩn trang WordPress khỏi Google.

For example, search engines may have already crawled and indexed the post before you can hide it. If you want to prevent search engines, then see our guide on how to hide a WordPress page from Google.

Đ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ó.

This also will not work if a WordPress plugin uses a custom query that skips your checks and reveals the content you are trying to hide.

A better approach would be to password protect a post so that only users with the password can view it.

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.

You can also create a private post which is only visible to the administrators, editors and authors on your website.

Tôi có thể sử dụng các cách này để chia sẻ nội dung với những người 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 với từng người dùng cụ thể. Cách tốt hơn sẽ là sử dụng WordPress membership plugin.

Các WordPress membership plugin như MemberPress cho phép bạn tạo và xuất bản các nội dung bị hạn chế. Bạn thậm chí có thể bán các gói nội dung premium.

Để biết thêm chi tiết, hãy xem hướng dẫn của chúng tôi về cách tạo trang web thành viên WordPress với hướng dẫn cụ thể.

Chúng tôi hy vọng bài viết này sẽ giúp bạn tìm hiểu cách ẩn bài đăng WordPress khỏi trang chủ và các nơi khác trên trang web của bạn. Bạn cũng có thể xem hướng dẫn của chúng tôi về cách tạo một trang web WordPress ở chế độ hoàn toàn riêng tư.

Nếu bạn thích bài viết này, xin mời bạn đăng ký Kênh YouTube của chúng tôi để xem video hướng dẫn. Bạn cũng có thể tìm thấy chúng tôi trên Twitter và Facebook.

Leave a Reply

Your email address will not be published. Required fields are marked *

+