Ermitteln Sie die Anzahl der Follower und folgen Sie in der Benutzerbeziehung

8

Ich habe eine Beziehung erstellt. Follower, die mit dem Benutzerbeziehungsmodul ausgetauscht werden können. Die Beziehung von Benutzer A ist ungefähr so: Follower (Sie für Sie): Benutzer B, Benutzer C, Benutzer D Follower (Sie für sie): Benutzer D.

Jetzt möchte ich eine Ansicht erstellen, die nur die Anzahl der Follower und Folgendes anzeigt: Follower: 3
Folgendes: 1

Ich wollte die Ansicht erstellen (Ansichten 3, Drupal7), konnte dies jedoch nicht. Ich habe keine Filter oder Beziehungen dazu erhalten. Ich habe auch versucht, das Views Cal zu verwenden, bin mir aber nicht sicher. Würde mich über jede Hilfe freuen.

Vielen Dank

Bearbeiten:

Entschuldigung für die Unklarheit.

Ich habe eine Ansicht vom Typ Benutzer erstellt. Dann habe ich eine Beziehung hinzugefügt (dies ist der Teil, in dem ich nicht sicher bin, ob ich richtig bin oder nicht). Ich habe versucht, alle verfügbaren Beziehungen zu diesem Thema zu verwenden, z. B. Benutzerbeziehungen:

 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

(Ich habe sie alle einzeln ausprobiert und auch verschiedene Kombinationen davon)

Dann habe ich unter Andere auf Ja für Aggregate verwenden geklickt und als ich nach der Gruppierungsfunktion gefragt wurde ("Gruppentyp"), habe ich "Zählen" ausgewählt und die Beschriftung im Bildschirm "Konfigurieren" deaktiviert, sodass nur die Nummer angezeigt wird.

Ich habe auch einen Filter hinzugefügt, in dem der Benutzer angemeldet ist. Er zeigt jedoch nur die Anzahl der Beziehungen verschiedener Benutzer an, die den aktuellen angefordert haben.

Bearbeiten 2:

Fand diesen Thread: http://drupal.org/node/809476 . Wie auch immer, es ist für Drupal 6 ..., ich versuche es für 7 zu implementieren. Mal sehen ... wenn Sie irgendwelche Hinweise haben, wäre ich dankbar ... wird Sie auf dem Laufenden halten

Edit 3:

Basierend auf dem obigen Thread habe ich den folgenden Code in einen benutzerdefinierten Block geschrieben.

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

Ich habe gerade die Benutzer-ID ausgedruckt, um zu überprüfen, ob der Benutzer korrekt ist oder nicht, und sie druckt den richtigen Benutzer aus. Zählen Sie jedoch Drucke 0. Warum ist das so?

Bearbeiten 4:

Ich denke, ich bin auf dem richtigen Weg mit http://drupal.org/node/203396 . Es gibt jedoch einige Korrekturen. Der richtige Code lautet:

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

Dies zeigt die Gesamtzahl der genehmigten Beziehungen an. Jetzt möchte ich nur die Beziehungsnummer des Follower-Typs. Ich schaue mir das an. Wenn jemand irgendwelche Vorschläge hat, würde er sich freuen. Hält euch alle auf dem Laufenden

Edit5:

Und jetzt stecke ich fest. Was auch immer ich versuche zu tun, ich bekomme nur die Gesamtzahl der Beziehungen. Ich möchte nur die Anzahl der Follower (sie zu Ihnen) in einem Block und dann, wenn ich das benutze, hoffe ich, dass ich in der Lage sein werde, die Anzahl der Follower (Sie zu ihnen) zu bekommen. Würde mich über jede Hilfe freuen.

Vielen Dank

Warum
quelle
1
Was hast du versucht? Wie konkret haben Sie es versucht? Was hat nicht funktioniert? Inwiefern unterschied sich das, was Sie versucht haben, von dem, was Sie erwartet hatten? Sie müssen zeigen, dass Sie versucht haben, Probleme selbst zu lösen. Diese Website dient nicht zum Anfordern von Tutorials
Clive
Vielleicht kann ich verwenden, function user_relationships_type_load($param = array(), $reset = NULL) aber ich brauche eine Anleitung oder Hilfe
warum
Die Parameter für user_relationships_load enthalten auch einen Zwischenparameter. "Array (" zwischen "=> Array ($ uid1, $ uid2)) gibt alle Beziehungen zwischen den beiden Benutzer-IDs zurück"
Mark Ferree
@kewal, bitte konnten Sie das Problem lösen? Ich brauche diese Funktion in meinem Projekt. Vielen Dank.
Seyi
@seyi Ich habe es mit den eingebauten Blöcken gemacht und über Panels angezeigt ... auch Sie können user_relationships_type_load ($ param = array (), $ reset = NULL) verwenden .... sorry, ich kann mich nicht an die genauen Details erinnern aber würde mich in einiger Zeit bei Ihnen melden, wenn ich es finde ... Grüße
warum

Antworten:

1

Die folgende Funktion funktioniert für mich, um die Anzahl der Freunde eines Benutzers anzuzeigen:

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

Beachten Sie, dass ich nur genehmigte Freunde und nur Beziehungen vom Typ 'Freund' zähle.

Druvision
quelle