Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
<?php
// для начала создадим sql функцию
function privatemsg_sql_getcount(&$fragments, $uid) {
// указываем таблицу
$fragments['primary_table'] = '{pm_message} pm';
// добавляем поле
$fragments['select'][] = 'count(pm.mid)';
// добавляем условия
$fragments['where'][] = 'pm.account = %d';
$fragments['query_args'][] = $uid;
}
// Теперь мы можем использовать наш запрос
$query = _privatemsg_assemble_query('getcount', $user->uid);
$result = db_result($query['query']);
?>
// Для получения количества новых сообщений залогиненного юзера
$new_count = privatemsg_unread_count();
Все это можно сделать в препроцессе конкретного блока. Мне кажется, что так намного проще.
$result = db_result($query['query']);
…
privatemsg_unread_count();
Не путайте вложенные запросы и отдельные запросы из php. Мне кажется разница очевидна.Совершенно верно. Разница очевидна ;)
Модуль Views — API. Основы