Làm Thế Nào Để Ẩn Những Bài Viết Có Mật Khẩu Bảo Vệ

WordPress cho phép bạn tạo ra các bài đăng có mật khẩu bảo vệ. Gần đây, một trong các độc giả của chúng tôi đã hỏi rằng việc giấu đi các bài đăng có mật khẩu bảo vệ khỏi trang hay không. Mặc định, WordPress giấu đi nội dung của một bài đăng được mật khẩu bảo vệ, nhưng nó hiện lên tiêu đề của bài đăng với tiền tố “Protected”. Trong bài viết này, chúng tôi sẽ cho bạn thấy làm thế nào để ẩn những bài viết được mật khẩu bảo vệ trong WordPress.

Tạo sao phải ẩn những bài viết được mật khẩu bảo vệ?

Khi thêm content locking vào wordpress thì mặc định WordPress đưa ra các bài đăng có mật khẩu bảo vệ với tiêu đề của nó và một tiền tố “protected”. Người dùng sẽ cần phải nhập mật khẩu để có thể xem nội dung của bài viết.

protected-posts-wordpress-1

Tiêu đề bài viết này có thể nhìn thấy được trên trang chủ, chuyên mục, các trang gần đây, v.v… Nếu bạn muốn giữ nội dụng hoàn toàn cá nhân, vậy thì điều này không hề lý tưởng.

Không chỉ những người không có mật khẩu có thể xem tiêu đề của bài viết, họ còn có thể cố gắng để truy cập vào bài viết. Như chúng ta đều biết, mật khẩu có thể bị lộ.

Hãy cùng xem làm thế nào để giấu đi các bài đăng được mật khẩu bảo vệ khỏi vòng lặp của WordPress tương tự như khắc phục những trùng lặp về nội dung để người dùng khác không thể thấy chúng.

Ẩn những bài viết được mật khẩu bảo vệ trong WordPress.

Đợn giản thêm đoạn code này vào file functions.php trong giao diện của bạn hoặc một site-specific plugin.

function wpb_password_post_filter( $where = '' ) {
    if (!is_single() && !is_admin()) {
        $where .= " AND post_password = ''";
    }
    return $where;
}
add_filter( 'posts_where', 'wpb_password_post_filter' );

Đoạn code này sẽ thay đổi lời gọi gửi tới WordPress bằng việc sử dụng bộ lọc posts-where. Nó yêu cầu WordPress lấy đi tất cả các bài đăng mà không có mật khẩu.

Bây giờ hãy quay trở lại với trang web của bạn và thấy rằng các bài đăng có mật khẩu bảo vệ đã không còn có thể nhìn thấy trên trang chủ, archives, hoặc trong widget nữa như các bài đăng gần đây.

ẩn những bài viết có mật khẩu

Bạn vẫn có thể xem bài đăng bằng việc truy cập vào nó thông qua một URL trực tiếp đến bài đăng.

Ví dụ bên trên, các bài đăng đã được mật khẩu bảo vệ khỏi tất cả các người dùng. Nếu như bạn chạy một trang WordPress nhiều tác giả và muốn bảo vệ bài đăng khỏi việc bị xem bởi các người dùng khác với khả năng có thể chỉnh sửa các bài đăng cá nhân?

Đơn giản chỉnh sửa đoạn code bên trên với tag thêm vào khác, như thế này.

function wpb_password_post_filter( $where = '' ) {
   if (!is_single() && !current_user_can('edit_private_posts') && !is_admin()) {
        $where .= " AND post_password = ''";
    }
    return $where;
}
add_filter( 'posts_where', 'wpb_password_post_filter' );

Trong ví dụ này, chúng tôi kiểm tra nếu một người dùng không thể chỉnh sửa các bài đăng có mật khẩu bảo vệ, vậy thì chỉ hiển thị các bài viết không có mật khẩu. Làm như vậy, tất cả người dùng với các vai trò người dùng là quản trị viên hoặc biên tập viên sẽ thấy các bài đăng có mật khẩu bảo vệ trên mặt trước của trang. Bạn có thể tham khảo thêm bài viết những cách tiện dụng để bảo vệ trang web wordpress của bạn.

Hãy đăng ký theo dõi chúng tôi để nhận được nhiều thông tin hữu ích, hay những ebook hay nhé !

Về tác giả

Duy Anh

Chào các bạn,

Mình là coder, đang sống và làm việc ở Mỹ. Mình thích viết lách nên muốn dành khoảng thời gian trống để chia sẻ các thủ thuật giúp các bạn xây dựng được trang web riêng của mình. Bạn nào cần xây dựng blog, web thì cứ ới, rảnh là mình giúp, tất cả FREE nhé!

Ý kiến cá nhân của bạn

bộ công cụ Wordpress hữu ích dành cho mọi website

Bộ công cụ hữu ích dành cho mọi website Wordpress

Bao gồm theme & plugin tốt nhất và được sử dụng nhiều nhất!

Xin vui lòng kiểm tra email để xác thực tài khoản!