Obter o número de seguidores e seguidores no relacionamento do usuário


8

Eu criei um relacionamento Seguidores que podem ser correspondidos usando o módulo de relacionamento com o usuário. Agora, o relacionamento do usuário A é algo como: Seguidores (Eles para você): Usuário B, Usuário C, Usuário D Seguidores (Você para eles): Usuário D

Agora, quero criar uma exibição que mostre apenas o número de seguidores e os seguintes: Seguidores: 3
Seguintes: 1

Eu estava prestes a criar a visualização (visualizações 3, Drupal7), mas não consegui. Não obtive nenhum filtro ou relacionamento com relação a isso. Além disso, tentei usar o Views Cal, mas não estou claro. Gostaria de receber qualquer ajuda.

obrigado

Editar:

Desculpas por não ser claro.

Eu criei uma exibição do tipo Usuários. Então eu adicionei um relacionamento (esta é a parte em que não tenho certeza se estou correto ou não). Eu tentei com todos os relacionamentos disponíveis relacionados a isso, como relacionamentos com o usuário:

 User relationships: Requestee user
 User relationships: Requestee user is current user 
 User relationships: Requester user
 User relationships: Requester user is current user
 User relationships: RTID

(tentei individualmente todos eles e várias combinações deles também)

Em Outros, cliquei em Sim para Usar Agregados e, quando solicitada a função de agrupamento ("Tipo de grupo"), selecione "Contar e desmarque a etiqueta na tela do campo de configuração, para mostrar apenas o número.

Também adicionei um filtro no qual o usuário está conectado. No entanto, ele apenas mostra o número de relacionamentos de diferentes usuários que solicitaram o atual.

Edição 2:

Encontre este tópico: http://drupal.org/node/809476 . No entanto, é para o Drupal 6 ..., estou tentando implementá-lo para o 7. vamos ver ... se você tiver algum ponteiro, eu ficaria grato ... manterá você informado

Edição 3:

Com base no tópico acima, escrevi o seguinte código em um bloco personalizado.

<?php
global $user;
$user_id = $user->uid;
$params = array("requestee_id" => $user_id, 'rtid' => 3);
$count = user_relationships_load($params, array("count" => TRUE));
echo $user_id;
echo $count;
?>

Acabei de imprimir o ID do usuário para verificar se o usuário está correto ou não e ele imprime o usuário correto. No entanto, a contagem imprime 0. Por que isso?

Edição 4:

Acho que estou no caminho certo usando http://drupal.org/node/203396 . No entanto, existem algumas correções lá. O código correto é:

<?php
global $user;
$requests = user_relationships_load($param = array("approved" => 1, "user" => $user->uid), $options = array(), $reset = FALSE);
$requestcount = count($requests);
echo  $requestcount;
?>

Isso exibe o número total de relacionamentos aprovados. Agora eu quero apenas o número de relacionamento do tipo seguidores. Olhando para isso. Se alguém tiver alguma sugestão, agradeceria. Manterá todos vocês informados

Edit5:

E agora estou preso. O que quer que eu tente fazer, apenas recebo o número total de relacionamentos. Eu só quero o número de seguidores (eles para você) em um bloco e, em seguida, usando isso, espero, eu seja capaz de obter o número de seguidores (você para eles). Gostaria de receber qualquer ajuda.

obrigado


11
O que você tentou? Como especificamente, o que você tentou? O que não deu certo? Como o que você tentou diferiu do que estava esperando? Você deve mostrar que você tem tentado resolver problemas por si próprio, este site não é para tutoriais solicitando
Clive

talvez eu posso usar function user_relationships_type_load($param = array(), $reset = NULL) , mas eu preciso de alguma orientação ou ajuda
por

Os paramaters para user_relationships_load também incluem um paramater. "array (" entre "=> array ($ uid1, $ UID2)) irá retornar todas as relações entre os dois IDs de usuário"
Mark Ferree

@ kewal, por favor você conseguiu resolver o problema? Eu preciso dessa função no meu projeto. Obrigado.
Seyi

@seyi eu fiz isso usando os blocos internos disponíveis e exibindo-o através de painéis ... também você pode usar user_relationships_type_load ($ param = array (), $ reset = NULL) .... desculpe, não consigo lembrar os detalhes exatos mas voltaria para você em algum momento se eu o encontrar ... cumprimentos
por que

Respostas:


1

A seguinte função funciona para eu exibir a contagem de amigos que um usuário possui:

function mymodule_user_friends_count ($user) {
  $count = user_relationships_load(
    array("user" => $user->uid, 'approved' => 1, "name"=>'Friend'), 
    array('count' => TRUE));
  return $count;
}

Observe que apenas conto amigos aprovados e apenas relacionamentos do tipo 'Amigo'

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.