У меня та же проблема. Я обнаружил, что если бы я отфильтровал по node.type = 'blog' и установил поля для полей профиля, которые меня интересовали, я мог бы получить список или авторов, но были бы дубликаты. Установка «Отличить» на «Да» не помогла, потому что выбирались разные узлы, а не отдельные пользователи.
Итак, я создал пользовательский блок для показа этой информации с помощью следующего кода:
<?php
$block['subject'] = t('Bloggers');
// Get a list of blog authors
$result = db_query('SELECT DISTINCT u.uid, u.name FROM {node} n INNER JOIN {users} u ON n.uid = u.uid WHERE n.type = \'blog\'');
$links = array();
while ($blogger = db_fetch_object($result)) {
$link = array();
if (module_exists('profile')) {
profile_load_profile($blogger);
}
if (!empty($blogger->profile_first_name) || !empty($blogger->profile_last_name)) {
$link['title'] = $blogger->profile_first_name . (empty($blogger->profile_first_name) ? '' : ' ') . $blogger->profile_last_name;
}
else {
$link['title'] = $blogger->name;
}
$link['href'] = 'blog/' . $blogger->uid;
$links[] = $link;
}
$block['content'] = theme('links', $links, array('class' => 'flat-links'));
?>
Надеюсь, это поможет.