Код выводит список из 10 пользователей, которые больше всего писали в блогах.
Сообщение вида:
* Псевдоним 1
* Псевдоним 2
* Псевдоним 3
<?php
$users = db_query('
SELECT
COUNT(nid) AS count,
u.uid,
u.name
FROM
{node} n
LEFT JOIN
{users} u
ON
n.uid = u.uid
WHERE
n.uid != 0
AND
n.type = \'blog\'
GROUP BY
uid
ORDER BY
count DESC
LIMIT 10'
);
$list = array ();
while ($user = db_fetch_object($users)) {
$list[] = l($user->name, 'blog/'.$user->uid); // Для ссылки на профиль пользователя слово "blog" заменить на "user"
}
print theme('item_list', $list);
?>
UPD 05.02.2008: Separator@drupal.org
Комментарии
этот снипет выводит в строчку
А как сделать в столбик?
и еще вопросик, а как сделать чтобы ссылки вели на не блоги а на профили?
Чтобы на профили, то в строке:
print ".<a href="blog/".$user->uid."">".$user->name."</a> ";
blog
поменять наuser
, а для строчек поставить<ul>
или<ol>
, получиться:<?php
$users = db_query("SELECT COUNT(nid) AS count, {users}.uid, {users}.name FROM {node} LEFT JOIN {users} ON {node}.uid = {users}.uid WHERE {node}.uid != 0 GROUP BY uid ORDER BY count DESC LIMIT 10");
while ($user = db_fetch_object($users)) {
print "<ul> <a href="user/".$user->uid."">".$user->name."</a> </ul>";
}
?>
хм, у меня почему то все равно
ссылка вида
/node/user/1
то есть node лишнее
Ап
<a href="user/"
заменить на
<a href="/user/"
А как добавить аватар пользователя, желательно из imagecash?