Ottieni il numero di follower e segui nella relazione utente


8

Ho creato una relazione follower che può essere ricambiata utilizzando il modulo di relazione utente. Ora la relazione dell'utente A è qualcosa di simile: follower (loro): utente B, utente C, utente D follower (tu): utente D

Ora voglio creare una vista che mostri solo il numero di follower e quanto segue: Seguace: 3
Seguente: 1

Ho cercato di creare la vista (Views 3, Drupal7) ma non sono riuscito a farlo. Non ho ricevuto alcun filtro o relazione in merito. Inoltre, ho provato a utilizzare Views Cal ma non sono chiaro. Gradirei qualsiasi aiuto.

Grazie

Modificare:

Ci scusiamo per non essere stato chiaro.

Ho creato una vista di tipo Utenti. Quindi ho aggiunto una relazione (questa è la parte in cui non sono sicuro di essere corretto o meno). Ho provato con tutte le relazioni disponibili relative a questo, come le relazioni dell'utente:

 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

(ho provato singolarmente tutti e varie combinazioni anche di loro)

Quindi in Altri ho fatto clic su Sì per Usa aggregati e quando mi è stata richiesta la funzione di raggruppamento ("Tipo di gruppo"), ho selezionato "Conta e deselezionato l'etichetta nella schermata del campo di configurazione, in modo che mostri solo il numero.

Ho anche aggiunto un filtro a cui l'utente ha effettuato l'accesso. Tuttavia, mi mostra solo il numero di relazioni di diversi utenti che hanno richiesto quello corrente.

Modifica 2:

Trovato questo thread: http://drupal.org/node/809476 . Comunque è per Drupal 6 ..., sto cercando di implementarlo per 7. Vediamo ... se hai qualche suggerimento ti sarei grato ... ti terrò aggiornato

Modifica 3:

Sulla base del thread sopra ho scritto il seguente codice in un blocco personalizzato.

<?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;
?>

Ho appena stampato l'id utente per verificare se l'utente corretto o meno e stampa l'utente corretto. Tuttavia, conta le stampe 0. Perché?

Modifica 4:

Penso di essere sulla buona strada usando http://drupal.org/node/203396 . Tuttavia ci sono alcune correzioni lì. Il codice corretto è:

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

Questo mostra il numero totale di relazioni approvate. Ora voglio solo il numero di relazione del tipo di follower. Guardando in quello. Se qualcuno ha qualche suggerimento li apprezzerebbe. Ti terremo aggiornato

Edit5:

E ora sono bloccato. Qualunque cosa io provi a fare, ottengo solo il numero totale di relazioni. Voglio solo il numero di follower (loro per te) in un blocco e poi usando quello, spero, sarò in grado di ottenere il numero di follower (tu per loro). Gradirei qualsiasi aiuto.

Grazie


1
Che cosa hai provato? Come nello specifico cosa hai provato? Cosa non ha funzionato? In che modo ciò che hai provato differiva da quello che ti aspettavi? È necessario dimostrare che si è tentato di risolvere i problemi da soli, questo sito non è per esercitazioni che richiedono
Clive

forse posso usarlo, function user_relationships_type_load($param = array(), $reset = NULL) ma ho bisogno di indicazioni o aiuto
perché il

I parametri per user_relationships_load includono anche un parametro tra. "array (" between "=> array ($ uid1, $ uid2)) restituirà tutte le relazioni tra i due ID utente"
Mark Ferree,

@kewal, per favore, sei riuscito a risolvere il problema? Ho bisogno di questa funzione nel mio progetto. Grazie.
seyi,

@seyi l'ho fatto usando i blocchi integrati disponibili e visualizzandolo tramite pannelli ... inoltre puoi usare user_relationships_type_load ($ param = array (), $ reset = NULL) .... scusa non riesco a ricordare i dettagli esatti ma ti risponderei tra qualche tempo se lo trovo ... saluti
perché il

Risposte:


1

La seguente funzione funziona per me per visualizzare il numero di amici di un utente:

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

Nota che conto solo amici approvati e solo relazioni di tipo "Amico"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.