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. :)
Update vào theme luôn dc k Hiếu
Không bạn nhé. Vì child theme không có file comments.php và không phải ai cũng thích hiển thị bộ đếm bình luận. :P
Không biết chèn cái bộ đếm này vào có bị làm chậm web đi nhiều không Hiếu nhỉ ?
Không ảnh hưởng gì lắm đâu bác. Cứ thoải mái đi. :P
bạn thấy WPCanban load nhanh không :D nên khỏi lăn lăn là có chậm hay ko :D
Không liên quan lắm nhưng mình thấy dùng cái bình luận của jetpack cũng hay phết, lại gọn nữa. Mỗi tội không biết google nó có tìm cho không :P
Google Bots vẫn thu thập dữ liệu bình thường. Tuy nhiên hệ thống bình luận này có 1 nhược điểm là thỉnh thoảng bị lỗi không load được form do dữ liệu của form được tải từ server của WordPress.com. Và tất nhiên nó cũng nặng hơn hệ thống bình luận mặc định. :)
À ra thế, thảo nào thỉnh thoảng thấy nó bị lỗi không hiện khung bình luận :D
Cho mình hỏi bài post này của mình bị lỗi gì nhỉ. Bạn có cách khắc phục không http://duydam.com/tiep-thi-lien-ket/chu-de-blog-nao-tot-cho-tiep-thi-lien-ket.html
Bạn chỉnh gì trong mã nguồn theme mà để nó bị lỗi vậy? Cách nhanh nhất là upload file gốc và ghi đè lên thôi. :P
Mình không chỉnh gì cả. mình mới viết bài mới và đăng lên thì bị như vậy.
Các bài viết khác của mình vẫn bình thường mà.
Chuyển trình soạn thảo sang chế độ Text xem có mã HTML nào lạ trong nội dung bài viết không? :P
Bậy. Làm gì có chuyện tự nhiên. Nếu là tự nhiên tại sao mọi người không bị mà bạn lại bị? Và tại sao trước đây không bị mà giờ mới bị? Mọi việc đều có nguyên nhân của nó. 1 là bạn đã can thiệp vào mã nguồn theme. 2 là bạn cài plugin nào đó gây xung đột với theme. Bạn nên kiểm tra lại đi. :P
Do có đoạn HTML lạ. Mình sửa được rồi cảm ơn bạn.
Chắc bạn copy text mà nó copy luôn cả HTML nên bị lỗi. Lần sau cẩn thận hơn nhé. :D
Đang dùng wpDiscuz nên ko chèn được :( hiu hiu
wpDiscuz cũng khá hay. Nhưng mình thích hệ thống bình luận mặc định của WordPress hơn. Nó nhẹ và cho phép Google Bots crawl dữ liệu một cách dễ dàng. :)
Để hôm nào mình dùng cái mặc định xem :D mà cái này nó vẫn thu nhập dữ liệu đúng ko nhỉ?
Dữ liệu bình luận được lưu ngay trên host của bạn nên tất nhiên Google vẫn thu thập được dữ liệu rồi, trừ khi bạn chặn. :P
klq cơ mà có comment system nào chia được page giống hệ thống mặc định WP không mọi người?
Thấy bữa nay ai cũng làm cái này hết nhỉ, hơi mắc công mỗi khi update :3 Cơ mà chắc cũng phải làm cho kịp với xu hướng :V
Lúc update thì bổ sung 1 dòng code vào trong file comments.php chứ mấy. Thằng Genesis cũng có update liên tục đâu mà lo. :P
À thím, có cách nào để gỡ link AMP mà người dùng không bị dẫn đến link 404 không nhể :() Giờ muốn gỡ cơ mà link /amp toàn top với nhiều người vào, 404 hết thì không ổn lắm :()
Kiếm cái plugin redirect 301 từ trang 404 về trang chủ đi. Mà sao đứng top lại chạy đi gỡ làm chi? :P
301 từ trang 404 về trang chủ rồi, nhưng không lẽ người ta cứ vào link đó là chui vô trang chủ hết? LOL :V Cái link đó nó tồn tại trên kết quả tìm kiếm lâu không khi mình gỡ nhỉ :P
Trừ khi chú yêu cầu Google xóa đi, còn nếu không thì chờ đến mùa quýt. :P
Tớ cảm thấy rất đau lòng vì nghịch mãi cái này mà không được. Không ăn cơm từ đêm qua đến giờ rồi đó. Chỉ tớ với…
Em nhớ không nhầm thì hình như lần trước thấy blog của bác có bộ đếm rồi mà? :P
NÁT, có đâu… nó chỉ có đếm TOP Comment trong 20 ngày thôi. Còn số bình luận của một người không có có. Hồi trước nghịch rồi mà chưa được, nay nghịch tiếp cũng bó tay :v
Không được thì hú em, 1 tỷ 1 lần, bao phân ra admin và mem thường luôn :V
Lặn đi đâu mất xác mà hú với hí cái gì. Có cài web trên localhost không ? Thử hộ cái theme Smartline giúp mình coi nó chèn vào chỗ nào mà mãi không được ta :v
Viết bài hướng dẫn add roles cho thành viên bình luận đi. Chẳng hạn như Admin, Editor, Author… giống kiểu Canh Me ấy. :D
Hiện mới nghĩ ra cách phân theo author, admin các thứ thôi. đang tìm cách phân theo user nữa rồi làm một thể :D
Mà anh xem sao e không nhận được thông báo khi có người rep comment nhể
Mình thấy email của bạn trong danh sách unsubscribe. :P Chắc vì thế nên nhận được email. Mình vừa remove rồi. :P
Làm được share mình với
Em thấy cái của anh ổn thế còn gì ạ?
Đang mất mạng nên phải dùng đt đây :(
Đợi khi nào có mạng rồi em xem cho :v Nhớ chuẩn bị trước con gà đi là vừa :P
Được được, mà mất mạng hay mạng lag ?
Không biết lý do gì 02 bữa nay con blog vào cứ chập chờn. Host Viettel IDC, tên miền .vn chứ có bên Tây bên tàu gì đâu mà ảnh hưởng nhỉ ?
Mạng đang chấm than từ tới t6 đến giờ đây, cứ như là người rừng ấy :v
Dùng đt vẫn vào ngon chán mà???
Ò, thế thì mạng đó mạng rởm rồi đấy. Mạng ở đây xài mấy trang khác bình thường mà blog mình nó cứ chậm như có gì đó chặn lại ấy :v
Để ý nó bị vậy kể từ khi cài wpsuper cache. Nhưng cài web mới trong thư mục con cũng nghẹt nghẹt dù ko có post nào.
Bác kiểm tra lại xem tài nguyên host có bị tăng lên bất thường không? Coi chừng bị xung đột plugin đó. :P
Dòm nghía qua nghía lại chưa bao giờ CPU với RAM nó vượt 40% luôn ấy, không biết do thèng nào gây ra nữa: Host, Domain, SSL.
Nhưng mà tạo một cái web mới với đường dẫn kiểu như: hocban.vn/demo thì nó cũng giật giật, mặc dù chưa có post gì hết.
Bác kiểm tra Raw Access trong cPanel xem có nguồn lạ nào đang request vào host của bác không. :P
Dài quá xem phát mệt, không biết có dấu hiệu gì để nhận biết không nhỉ. Viết bài hướng dẫn nhận biết đi Hiếu :p
Mình mới cài lại thằng WP SuperCache cho nó đỡ tí, dạo trước không cần thằng này nó cũng nhanh, giờ nó chậm quá phải xài thôi.
Tính đợi cáp quang khắc phục xong xem sao nhưng vẫn thấy vô lý lắm, nó đứt lâu nay mà bữa nay mới bị ảnh hưởng từ ngày 05/03/2017
Bác xài host của nhà cung cấp nào mà bảo là bị ảnh hưởng bởi sự cố đứt cáp? :P
Mình xài của Viettel IDC. Không biết do cáp quang biển hay không, nhưng trang đăng nhập thành viên của họ cũng chậm ngang ngửa blog mình. Gửi phản hồi rồi nhưng họ bảo mọi sự vẫn bình thường, web chạy nhanh, ko bị sao cả :( đôi khi nó trễ trên từ 5 đến 10s mà bình thường gì.
Nó không phải là dạng tải chậm hay từ từ load. Mà khi click vào link nó sẽ đứng yên vào giây rồi vào “cái vèo” kiểu như bị có gì đó chặn lại vậy đó.
Em vào thấy load nhanh phết mà. Bạn troll anh em à? :P
Mình có viết ở trên là mới cài lại WP SuperCache >> Đang tạm xài nó thôi, để cải thiện tình hình. Chờ cáp quang sửa xong là tắt ngay, blog mình hồi giờ đâu có chơi Cache.
Sao lại không chơi cache nhỉ? Nó giúp web load nhanh hơn và giảm tải cho host mà? :P
Do site còn nhỏ, lượng truy cập ít, không cần dùng làm gì cho mệt ấy mà. Xài cái đó nhanh kiểu ảo diệu thế nào ấy. Cũng có thể chưa sử dụng đúng cách nữa :p
mình dùng Paradise child theme thì làm đúng như trên bạn nhỉ?
Nếu là theme Paradise thì bạn chèn 1 đoạn code vào functions.php, đoạn còn lại vào file comments.php trong wp-content/themes/genesis/lib/structure/, ngay sau dòng:
$comment_author_says_text );
Em chờ bài này của bác tới mòn răng :(
Quẩy đi thôi. :D
Quẩy ngủm luôn con blog rồi đấy thôi, từ hôm qua giờ chết tươi. :v
:)) nghịch phá quá mà ahihi
Cách không hiển hị bộ đếm của admin thì làm sau anh
Mình đang nghiên cứu. Lúc nào tìm ra cách sẽ cập nhật lên đây. :D
Dùng cái này xem sao :D
if ( ! is_admin() ) {
echo “You are viewing the theme”;
} else {
echo “You are viewing the WordPress Administration Panels”;
}
Post code ở blog của mình thì nên post trên GistHub rồi paste link vào nha. :P