Hướng dẫn tạo bộ đếm số lượng bình luận của mỗi người dùng trong WordPress.
Thời gian gần đây có một số bạn liên hệ hỏi tôi về việc tích hợp bộ đếm số lượng bình luận của mỗi người dùng vào bên cạnh nickname, giống như cách mà WP Căn bản hay một số website WordPress khác đang làm. Thực ra việc này khá đơn giản và nhanh gọn, tuy nhiên không phải ai cũng có thể làm được, đặc biệt là những người không có kiến thức về PHP. Nghe có vẻ hơi ngược đời nhưng sự thật đúng là như vậy. Chỉ 2 đoạn code ngắn gọn nhưng lại thách thức khả năng tư duy của bạn nếu muốn thực hiện thành công.
Tham khảo thêm:
- Tạo widget thống kê tổng số bài viết và bình luận có trên WordPress
- Tạo widget hiển thị top những người bình luận nhiều nhất
Tạo bộ đếm số lượng bình luận của mỗi người dùng
Tùy vào theme mà bạn đang sử dụng để lựa chọn phương pháp phù hợp:
Đối với theme Paradise
Nếu bạn đang sử dụng theme Paradise của WP Căn bản, tất cả những gì bạn cần làm là cài đặt và kích hoạt một plugin có tên là WPCB Comment User Badge. Ngoài tích hợp bộ đếm số lượng bình luận cho khách (phân theo nhiều cấp độ), plugin này còn hỗ trợ hiển thị cả vai trò của người dùng đăng nhập (chẳng hạn như quản trị viên, biên tập viên, tác giả…).
Vui lòng xem hướng dẫn thêm user role vào comment của theme Paradise để biết thêm chi tiết.
Đối với các theme khác
1. Đầu tiên, các bạn cần chèn đoạn code sau đây vào cuối file functions.php
của theme hoặc child theme mà bạn đang sử dụng:
function wpcb_count_user_comments() {
global $wpdb;
$count = $wpdb->get_var(
'SELECT COUNT(comment_ID) FROM ' . $wpdb->comments. '
WHERE comment_author_email = "' . get_comment_author_email() . '"
AND comment_approved = "1"
AND comment_type IN ("comment", "")'
);
return $count . ' comments';
}
Các bạn có thể thay chữ comments
ở dòng code thứ 10 thành chữ bình luận hoặc bất cứ chữ gì mà bạn thích.
2. Chèn tiếp đoạn code sau vào trong file comments.php
(hoặc các file có chức năng tương tự) trong theme của bạn:
echo wpcb_count_user_comments();
Bởi vì mỗi theme khác nhau lại có cấu trúc code khác nhau nên tôi không thể chỉ cụ thể vị trí chèn code được. Các bạn phải thử nghiệm để tìm ra vị trí chèn phù hợp nhé. Nhớ backup file trước khi tiến hành để tránh các trường hợp đáng tiếc có thể xảy ra. Cuối cùng, chúc các bạn thành công!
Bạn biết giải pháp khác đơn giản hơn để tích hợp bộ đếm số lượng bình luận của người dùng vào website WordPress? Hãy chia sẻ nó với chúng tôi trong khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi 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 nhé. Cảm ơn rất nhiều. :)
Mình có phần comment này mà trên PHP không ạ. Do em cũng muốn có phần này để đánh giá xem nội dung bài viết của mình nó có được phản hồi từ mọi người. Xin cảm ơn !
Mình không có bạn ạ.
muốn chèn vào genesis sau tên (giống ngày trc a làm) thì dùng code thế nào hả a :D
à e làm được rồi :D
Chưa đọc đã hỏi. Đập. :P
Mình có 2 thắc mắc nhỏ mong bạn phản hồi, thanks.
1/ làm sao bỏ cái phần mặc định Khách như trong hình đi nhỉ?
https://prnt.sc/gxzmrz
2/ Làm sao phần time dưới tên lại có link comment vậy?
Cái này là hệ thống bình luận mặc định của WordPress bạn nhé. Mình không dùng wpDiscuz như của bạn nên cũng không rõ lắm. :P
Xin lỗi làm phiền bác ad 1 lần nửa, mình ko rành code lắm, mong bác giúp đỡ
Mình dùng theme newspaper thì phải đặt code vào đâu vậy bác?
đây là nội dung file comment.php của mình
https://anotepad.com/notes/32rbxb
hờn mấy ông có chữ admin bên cạnh ghê gớm -_-
Bạn ơi làm thế nào để có avatar hiển thị như bạn admin được nhỉ?
Bạn tham khảo bài viết “Gravatar – Thay thế avatar mặc định của blog WordPress” nhé. :)
Cái này hay đấy, hóng từ lâu rồi hôm nay mới tìm thấy bài viết này. Giờ là 2h đêm và đang đi ngủ rồi mà muốn bật dậy mở máy làm thử ngay. Mà tiện cho hỏi luôn, cái khung bình luận làm thế nào để đảo lên phía trên danh sách bình luận như của bác vậy? Hướng dẫn đi. Khung bình luận mà ở phía dưới danh sách bình luận thì bài nào có bình luận nhiều thì kéo xuống tít cuối trang, khổ cho khách đọc quá, chắc làm được thì bình luận tăng gấp đôi, hướng dẫn em nha. Hậu tạ con gà và chai rượu.
Sẽ có bài hướng dẫn cụ thể nhé. :P
Sao phần đánh giá sao của mình k hiển thị đc vậy Hiếu? Ví dụ bài viết này http://luanvandoan.com/nhan-lam-do-an-tot-nghiep-cntt-luan-van-tot-nghiep-cntt/
Bạn tham khảo bài viết “Hướng dẫn cài đặt và sử dụng plugin kk Star Ratings” để thiết lập lại plugin cho phù hợp nhé. :P
Em dùng theme VOICE làm hoài chả được…NÃN,…
Bài hướng dẫn này chuẩn, Canh Me của anh cũng đang dùng tương tự.
Không liên quan cơ mà WP Căn Bản lỗi không lưu cookie người dùng rồi. Mỗi lần comment lại phải nhập lại info mệt quá.
Check lại đi Hiếu.
Em cũng không rõ do LiteSpeed Cache hay do Memcached. Để em kiểm tra lại xem sao. :)
Do WP Rocket, chỉnh lại cookie comment author còn có 3 phút thôi.
Apply filter của nó là được.
https://trello.com/c/qWcm0Xov/147-allow-caching-for-visitors-with-commenter-cookies
Em đang dùng LiteSpeed Cache + Memcached mà. :D Không dùng WP Rocket. :P
Thế thì tự mò thôi :P
Em vừa bỏ tính năng cache cho comment. Anh kiểm tra lại xem có bị lỗi cookie nữa không? :D
Ừ thì kiểm tra nào
OK rồi, cookie hơn 1 năm. Anh đang để bên Canh Me cookie 7 ngày thôi, có vậy cache mới chạy được.
Đang cân nhắc xem để bao lâu là hợp lý.
Anh check thời hạn của cookie kiểu gì vậy? :P
Đây: http://prntscr.com/ekljjo
Giờ mới để ý cái này luôn. :D Cảm ơn anh. :D
Còn nhiều trò hay lắm, he he.