Как они вкладки профиль в квик-табы засунули?... Вообще, там очень красивая реализация профиля!
Кстати, статистика - это ядро + пара доп модуле (user stats, может еще что...) Все красиво выглядит, потому что они вкладки - которые обычно идут сверху внизу как-то вставили в квик-табы...
$list = array();
while ($user = db_fetch_object($result)) {
//кол-во комментариев
$users_com = db_query("SELECT COUNT(cid) AS count, {users}.uid, {users}.name FROM {comments} LEFT JOIN {users} ON {comments}.uid = {users}.uid WHERE {comments}.uid = $user->uid GROUP BY uid ORDER BY count ");
$user_com = db_fetch_object($users_com);
$list[] ="
Дата регистрации: ".date("d-m-Y",$user->created)."
Последнее посещение: ".date("d-m-Y H:i",$user->access)."
Комментариев: $user_com->count
";
//документы
$q = "SELECT {node_type}.name as tipo,count({node}.type) as cant, {users}.uid, {users}.name
FROM {node}
LEFT JOIN {users} ON {node}.uid = {users}.uid
LEFT JOIN {node_type} ON {node}.type = {node_type}.type
WHERE {node}.uid = $user->uid
group by {node}.type";
Немного переработал код, убрал лишнее и привел к стандарту дрюпала. Поправил темзацию. Вставил сниппет в user-profile.tpl.php. В нем сразу доступна переменная $account с информацией о пользователе.
Комментарии
Кстати говоря, это quick-tabs!
Как они вкладки профиль в квик-табы засунули?... Вообще, там очень красивая реализация профиля!
Кстати, статистика - это ядро + пара доп модуле (user stats, может еще что...) Все красиво выглядит, потому что они вкладки - которые обычно идут сверху внизу как-то вставили в квик-табы...
Кстати, на теме на Др.орге ВСЕ спрашивают только про профиль - http://drupal.org/node/288476
Но тема старая, он видимо начнал с 5ки, потом проапдейтил до 6ки и многое изменил. Возможно там content_profile стоит + квик табы, кто знает...
А подробнее про статистику можно?
Я поставил user stats, но как ее вывести, в профиль к примеру?
темизация user-profile.tpl.php, а там надо добавить вывод нужной статистики
<?php
<p>Post count: <?php print user_stats_get_stats('post_count', $account->uid); ?></p>
?>
в readme.txt модуля, в принципе, все написано.
Не знаю как правильно делать, сделал сниппетом в блоке и показал блок только в профиле
Выводит вот такую статистику
# Дата регистрации: 26-10-2009
# Последнее посещение: 19-11-2009 01:28
* Комментариев: 11
* Запись в блоге 2
* Форум 5
* Изображение 86
* Новости 4
* Галерея 31
* Фотографии в галереях 1322
* Заметка 1
<?php
$userid = arg(1);
if (is_numeric($userid)) {
$nblimit = 30;
$query = "SELECT name, uid, created, access FROM {users}
WHERE uid=$userid ";
$result = db_query_range($query, array('user', 0), 0, $nblimit);
$list = array();
while ($user = db_fetch_object($result)) {
//кол-во комментариев
$users_com = db_query("SELECT COUNT(cid) AS count, {users}.uid, {users}.name FROM {comments} LEFT JOIN {users} ON {comments}.uid = {users}.uid WHERE {comments}.uid = $user->uid GROUP BY uid ORDER BY count ");
$user_com = db_fetch_object($users_com);
$list[] ="
Дата регистрации: ".date("d-m-Y",$user->created)."
";
//документы
$q = "SELECT {node_type}.name as tipo,count({node}.type) as cant, {users}.uid, {users}.name
FROM {node}
LEFT JOIN {users} ON {node}.uid = {users}.uid
LEFT JOIN {node_type} ON {node}.type = {node_type}.type
WHERE {node}.uid = $user->uid
group by {node}.type";
$result_doc = db_query ($q);
while ( $row = db_fetch_object ( $result_doc ) )
{
$list[] = "$row->tipo $row->cant" ;
}
}
$output = theme('item_list', $list, NULL, 'div', array('id'=>'user_list', 'class' => 'user_list_div'));
print($output);
}
?>
Немного переработал код, убрал лишнее и привел к стандарту дрюпала. Поправил темзацию. Вставил сниппет в user-profile.tpl.php. В нем сразу доступна переменная $account с информацией о пользователе.
<?php
$userid = $account->uid;
if (is_numeric($userid)) {
$list_content = array();
$list_private = array();
$list_private[] = "Последнее посещение: ".format_date($account->access, "medium");
//кол-во комментариев
$result_com = db_query("SELECT COUNT(cid) AS count, {users}.uid, {users}.name FROM {comments} LEFT JOIN {users} ON {comments}.uid = {users}.uid WHERE {comments}.uid = $userid GROUP BY uid ORDER BY count ");
$user_com = db_fetch_object($result_com);
$list_content[] = "Комментариев: $user_com->count";
$q = "SELECT {node_type}.name as tipo,count({node}.type) as cant, {users}.uid, {users}.name
FROM {node}
LEFT JOIN {users} ON {node}.uid = {users}.uid
LEFT JOIN {node_type} ON {node}.type = {node_type}.type
WHERE {node}.uid = $userid
group by {node}.type";
$result_type = db_query($q);
while ($row = db_fetch_object($result_type))
{
$list_content[] = $row->tipo.": ".$row->cant;
}
$output = theme('item_list', $list_private, NULL, 'ul', array('id'=>'user_list_private', 'class' => 'user_list'));
$output .= theme('item_list', $list_content, NULL, 'ul', array('id'=>'user_list_content', 'class' => 'user_list'));
print($output);
}
?>
а что бы
$list_private[] = "Дата регистрации: ".format_date($account->created, "medium");
$list_private[] = "Последнее посещение: ".format_date($account->access, "medium");
выводились не ироглифами а русскими буквами
в какой кодирвоке коды нада сохранять***???
а можно ли выводить всю статистику по материалам не все подряд а на выбор это хочу что бы выводилось а это не хочу...
а эту статситику в $tabs дополнительный ни как нельзя?
UTF-8
изменяете запрос в конце - добавляете только то, что надо
да нет я имел ввиду не правя код и что бы любой юзер мог это задавать.
Это модулем. Каким? Не знаю.