PPE.Edu.Vn

PPE.Edu.Vn

728x90-ads

  • Home
  • Blog
  • Chuyện Lạ
  • Công Nghệ
  • Giáo Dục
  • Đời Sống
  • Gia Đình
  • Làm Đẹp
  • Phong Thuỷ
  • Tips
  • Xe
You are here: Home / Blog / Xử lý comment spam WordPress theo cách của bạn

Xử lý comment spam WordPress theo cách của bạn

Tháng Mười Một 10, 2023 Tháng Mười Một 10, 2023 Vũ Hùng

Video cách đi spam trên blog

Comment spam trên blog WordPress vẫn là một vấn nạn khá nhức nhối kể từ xa xưa đến bây giờ. Không hiểu sao dạo gần đây plugin Akismet thần thánh không thể lọc được spam nữa nên comment spam cứ thế mà liên tục được bắn vào, rất là khó chịu trong khi mình không muốn lọc comment. Ngoài ra, đây cũng là cơ hội hay để thử nghiệm cách lọc spam mà không phụ thuộc vào plugin và Javascript để xem có hiệu quả hay không.

Có thể bạn quan tâm
  • Sidebar là gì? Cách tạo và sử dụng sidebar trong wordpress
  • Nhật ký làm bánh – Phần 2: Muffins
  • 7 phong cách trang trí cây thông Noel tuyệt đẹp 2022
  • Trang nhà của Bác sĩ Đỗ Hồng Ngọc
  • Literature-studying Blog

Cách xử lý khác nhau dựa trên cách hoạt động của từng website. Mong rằng bài viết này có thể giúp bạn xử lý tốt hơn mà không phải dựa vào plugin nếu không thể, không cần thiết.

Bạn đang xem: Xử lý comment spam WordPress theo cách của bạn

Không dùng captcha, không dùng Akismet để đỡ phải xử lý thêm ở phía client, vậy thì mình phải làm sao?………… Chính xác, mình xem đặc điểm các comment spam và comment thật của người dùng trên website của mình để từ đó lọc cho hợp lý.

Sau khi xem qua vài chục comment của khách hàng bình thường sẽ bao gồm nội dung bình thường hoặc đôi khi sẽ có kèm số điện thoại, trong khi comment spam luôn luôn có 2 đặc điểm sau:

  • Trong comment lúc nào cũng có liên kết đến website khác.
  • Spam đôi khi có liên kết đến website khác (Author URL). Vì website mình đã ẩn đi khung URL này, nên những comment nào có thể gửi được URL của tác giả đều phải gửi bằng phương thức POST qua /wp-comment-posts.php. Quá lộ 😀

Việc đơn giản của mình là lọc hoặc cho vào spam tùy theo mức độ, vì đôi khi khách hàng có thể chia sẻ liên kết Facebook, ảnh chụp màn hình nên không thể lúc nào cũng cho vào spam.

Chuẩn bị

Trước tiên, chúng ta phải tìm ra một hook hay filter để có thể can thiệp vào sự kiện người dùng bình luận. Tất nhiên phải tìm sự kiện chạy trước khi comment được thêm vào bài viết. Vì nếu chọn sự kiện sau khi thêm comment, WordPress có thể đã kích hoạt rất nhiều sự kiện khác, bao gồm clear cache. Lúc này comment spam đã xuất hiện trên website, và rất có thể đã bị Google nhìn thấy.

Rất may mắn WordPress đã chuẩn bị sẵn filter pre_comment_approved, sẽ xảy ra sau khi người dùng bình luận rồi sẽ quyết định là có chấp nhận (approve) hay chờ (pending) hoặc cho thẳng vào spam hay thùng rác luôn.

Xem thêm : TEM DÁN CẢNH BÁO HÀNG DỄ VỠ NÊN DÙNG CHO ĐÓNG GÓI HÀNG HÓA

Trong tài liệu đã ghi rất rõ và dễ hiểu, trả về 1 nếu bạn muốn chấp nhận, 0 nếu muốn cho chờ và spam hoặc trash theo nghĩa tương đương.

Vậy đoạn code ta sắp viết sẽ được gói gọn như sau (đã có trong tài liệu):

function filter_handler( $approved , $commentdata ){ // Xử lý và return } add_filter( ‘pre_comment_approved’ , ‘filter_handler’ , ’99’, 2 );

Chuẩn bị phần 2

Tiếp theo, chúng ta phải viết code để biết thế nào là một comment spam, hoặc nghi ngờ, hoặc chấp nhận ngay. Vậy chúng ta cùng lật lại 2 đặc điểm của comment spam của mình và xử lý:

  • Trong comment lúc nào cũng có liên kết đến website khác.
    • Cách xử lý: Cho vào Pending để duyệt sau.
  • Spam đôi khi có liên kết đến website khác (Author URL).
    • Cách xử lý: Cho ngay vào spam vì người dùng bình thường chẳng thể thêm được URL này.

Dựa vào mảng $commentdata mà WordPress chuẩn bị sẵn, ta có thể xử lý hai trường hợp này như sau:

Nếu tác giả có URL đến website khác

Nếu trong mảng con comment_author_url có chứa bất kì nội dung nào, cho ngay vào spam nhe 😀 Mình đặt đoạn này ở trên vì nếu có chứa author’s URL, chúng ta không cần xử lý gì nữa.

if(!empty($commentdata[‘comment_author_url’])){ return ‘spam’; }

Nếu trong nội dung comment có chứa URL nào đó

Đoạn này lại phải sử dụng Regular Expression, nếu bạn nào có đoạn đẹp hơn, nhẹ nhàng hơn thì góp ý với mình nhé. Đoạn code bên dưới có tác dụng phát hiện ra trong nội dung bình luận có chứa liên kết nào không, nếu có sẽ đưa vào dạng Chờ (pending) để mình chấp nhận sau.

Xem thêm : Sidebar là gì? Cách tạo và sử dụng sidebar trong wordpress

Kết quả khi kiểm tra ở regex101.com như sau:

$reg_exUrl = “/(?i)b((?:https?://|wwwd{0,3}[.]|[a-z0-9.-]+[.][a-z]{2,4}/)(?:[^s()<>]+|(([^s()<>]+|(([^s()<>]+)))*))+(?:(([^s()<>]+|(([^s()<>]+)))*)|[^s`!()[]{};:'”.,<>?«»“”‘’]))/”; if(preg_match_all($reg_exUrl, $commentdata[‘comment_content’], $url)) { return 0; }

Gom lại

Sau khi đã chuẩn bị tất cả, chúng ta gom vào làm một để triển khai thôi. Đoạn code cuối cùng sẽ là như vầy:

<?php function filter_handler( $approved , $commentdata ){ if(!empty($commentdata[‘comment_author_url’])){ return ‘spam’; } $reg_exUrl = “/(?i)b((?:https?://|wwwd{0,3}[.]|[a-z0-9.-]+[.][a-z]{2,4}/)(?:[^s()<>]+|(([^s()<>]+|(([^s()<>]+)))*))+(?:(([^s()<>]+|(([^s()<>]+)))*)|[^s`!()[]{};:'”.,<>?«»“”‘’]))/”; if(preg_match_all($reg_exUrl, $commentdata[‘comment_content’], $url)) { return 0; } return 1; } add_filter( ‘pre_comment_approved’ , ‘filter_handler’ , ’99’, 2 );

Uki, vậy là xong rồi đó, bạn có thể chèn đoạn code này vào tập tin functions.php của theme hoặc tạo một plugin tùy chỉnh tùy ý bạn. Sau đó bạn có thể đi comment thử xem còn được duyệt không nhé. Hihi.

Mở rộng

Ngoài ra, nếu bạn không có vấn đề với các liên kết ngoài, vẫn chấp nhận tự động nhưng lại không muốn WordPress tự động tạo thành liên kết thì có thể thêm đoạn này vào tập tin functions.php nhé. Đoạn code này không liên quan đến code ở trên, bạn muốn để đâu cũng được.

remove_filter( ‘comment_text’, ‘make_clickable’, 9 );

Bài viết được gắn thẻ: Akismet, spam, WordPress comment

Nguồn: https://ppe.edu.vn
Danh mục: Blog

Bài viết liên quan

RSF : Người dân Việt Nam cần thêm thông tin ngoài những kênh chính thức của Nhà nước
[TopTip] Top 5 Website Uy Tín Tuyển Cộng Tác Viên Viết Bài Tại Nhà - YBOX
[TopTip] Top 5 Website Uy Tín Tuyển Cộng Tác Viên Viết Bài Tại Nhà – YBOX
Khung giờ đăng nhiều tương tác nhất trên Social Media 2023
Khung giờ đăng nhiều tương tác nhất trên Social Media 2023
10 Blogger nổi tiếng trong giới IT bạn nên theo dõi
10 Blogger nổi tiếng trong giới IT bạn nên theo dõi
Top 10 Theme WordPress chuẩn SEO Tốt Nhất
Top 10 Theme WordPress chuẩn SEO Tốt Nhất
Dạo quanh bãi Trước Vũng Tàu - thành phố biển bậc nhất Việt Nam năm 2023
Dạo quanh bãi Trước Vũng Tàu – thành phố biển bậc nhất Việt Nam năm 2023
Quà tặng Online
Kinh nghiệm du học tự túc từ A đến Z
Kinh nghiệm du học tự túc từ A đến Z
Little space
Bí kíp xử lý gộp ô trong Excel chỉ với “nháy mắt”
Bí kíp xử lý gộp ô trong Excel chỉ với “nháy mắt”

Chuyên mục: Blog

728x90-ads

About Vũ Hùng

Previous Post: « 9 phương pháp bán hàng tốt nhất không nên bỏ lỡ!
Next Post: Hướng dẫn sử dụng phích nước Rạng Đông an toàn và bền lâu »

Primary Sidebar

Bài viết nổi bật

Hướng dẫn mới trên toàn thế giới nhằm tăng cường an ninh mạng AI

Tháng Mười Hai 12, 2023

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Tháng Mười Hai 12, 2023

Cụ bà 60 tuổi ở Thái Bình lo lắng cầu cứu chuyên gia vì "bệnh" chỉ thích yêu trai trẻ

Cụ bà 60 tuổi ở Thái Bình lo lắng cầu cứu chuyên gia vì “bệnh” chỉ thích yêu trai trẻ

Tháng Mười Hai 12, 2023

Trọn bộ 1001 icon viết content Facebook mới nhất cho dân content

Trọn bộ 1001 icon viết content Facebook mới nhất cho dân content

Tháng Mười Hai 12, 2023

Bí quyết giữ da căng mịn dù giảm 10 kg của Park Min Young

Bí quyết giữ da căng mịn dù giảm 10 kg của Park Min Young

Tháng Mười Hai 12, 2023

Giao tiếp AVR với máy tính

Tháng Mười Hai 12, 2023

Nhà trường đau lòng trước việc giáo viên hiếp dâm học trò

Nhà trường đau lòng trước việc giáo viên hiếp dâm học trò

Tháng Mười Hai 12, 2023

Dụng Cụ Cầm Tay Đa Năng Sửa Chữa Ô Tô, Viễn Thông...

Dụng Cụ Cầm Tay Đa Năng Sửa Chữa Ô Tô, Viễn Thông…

Tháng Mười Hai 12, 2023

Cách xem phim kỳ nghỉ và chương trình truyền hình đặc biệt trong mùa lễ 2023 này

Cách xem phim kỳ nghỉ và chương trình truyền hình đặc biệt trong mùa lễ 2023 này

Tháng Mười Hai 12, 2023

Hướng dẫn mới trên toàn thế giới nhằm tăng cường an ninh mạng AI

Tháng Mười Hai 12, 2023

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Tháng Mười Hai 12, 2023

75 năm thành lập Đội TNTP HCM    75 năm thành lập Đội TNTP HCM

75 năm thành lập Đội TNTP HCM 75 năm thành lập Đội TNTP HCM

Tháng Mười Hai 12, 2023

Cụ bà 60 tuổi ở Thái Bình lo lắng cầu cứu chuyên gia vì "bệnh" chỉ thích yêu trai trẻ

Cụ bà 60 tuổi ở Thái Bình lo lắng cầu cứu chuyên gia vì “bệnh” chỉ thích yêu trai trẻ

Tháng Mười Hai 12, 2023

Bí quyết giữ da căng mịn dù giảm 10 kg của Park Min Young

Bí quyết giữ da căng mịn dù giảm 10 kg của Park Min Young

Tháng Mười Hai 12, 2023

RSF : Người dân Việt Nam cần thêm thông tin ngoài những kênh chính thức của Nhà nước

Tháng Mười Hai 12, 2023

Nhà trường đau lòng trước việc giáo viên hiếp dâm học trò

Nhà trường đau lòng trước việc giáo viên hiếp dâm học trò

Tháng Mười Hai 12, 2023

SKKN Vận dụng dạy học tích hợp liên môn trong giảng dạy môn Địa lí lớp 9 ở Trường THCS Ngọc Khê

SKKN Vận dụng dạy học tích hợp liên môn trong giảng dạy môn Địa lí lớp 9 ở Trường THCS Ngọc Khê

Tháng Mười Hai 12, 2023

Cách xem phim kỳ nghỉ và chương trình truyền hình đặc biệt trong mùa lễ 2023 này

Cách xem phim kỳ nghỉ và chương trình truyền hình đặc biệt trong mùa lễ 2023 này

Tháng Mười Hai 12, 2023

Hướng dẫn mới trên toàn thế giới nhằm tăng cường an ninh mạng AI

Tháng Mười Hai 11, 2023

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Phải làm gì khi bị cô đồng nghiệp thân thiết tung tin đồn thất thiệt?

Tháng Mười Hai 11, 2023

Footer

Về chúng tôi

Mạng xã hội

Theo dõi chúng tôi tại Google News

Địa Chỉ

Map

Bản quyền © 2023