BLOGCODE.HEXAT.COM
Mod lượt xem này không phải Reshare đâu nha.
Cái này mình cũng phát hiện lâu rồi, hôm nai rãnh nên mới nhớ ra . nó có sẵn hết trong Johncms gốc, khỏi add data làm gì
Nó sẽ tính lượt xem thật sự những ai đã xem topic của bạn. Tránh view ảo :meh: và không tính lượt xem của khách truy cập đâu nha => muốn view nhiều thì user phải nhiều :cool: . Chỉ hợp làm forum chứ blog thì chắc chắn ko dùng rồi
Đầu tiên vào incfiles > classes > counters.php và thêm hàm này vào
static function forum_read($id)
{
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_rdm` WHERE `topic_id`='$id'"), 0);
$out = '<a href="'.core::$system_set['homeurl'].'/forum/index.php?id='.$id.'&act=who&mod=read">Đã xem '.$count.'</a>';
return $out;
}Sau đó vào forum > includes > who.php
tiến hành tìm
if ($id) {
thêm vào ngay sau nó
switch($mod):
default:tìm tiếp
echo '<p><a href="index.php?id=' . $id . '">' . $lng_forum['to_topic'] . '</a></p>';
thêm vào sau nó
break;
case 'read':
$req = mysql_query("SELECT * FROM `cms_forum_rdm` WHERE `topic_id`='$id' ORDER BY `time` DESC");
if ($count = mysql_num_rows($req)) {
echo '<div class="phdr"><b>Đã xem chủ đề</b></div>';
while ($res = mysql_fetch_assoc($req)):
echo '<div class="list1">'.MauNick($res[user_id]).' đã xem '.functions::display_date($res[time]).'</div>';
endwhile;
} else {
echo '<div class="bmenu"><p>' . $lng['list_empty'] . '</p></div>';
}
echo '<div class="phdr">' . $lng['total'] . ': '.$count.'</div>';
break;
endswitch;Nhớ thay function MauNick() nha, cái này nói nhiều rồi.
Xong giờ bạn chỉ cần dùng hàm counters::forum_read() là nó hiển thị lượt xem. truyền 1 tham số là id của topic
ví dụ :v
counters::forum_read($res['id']);
Nguồn: Murin - NhanhNao
| - Share: BBCode: Link: |
Cùng chuyên mục