Aggiungi punti utente per ogni voto positivo


8

Il mio sito drupal 7 ha un sistema di valutazione degli utenti per i contenuti degli autori, ma il problema è che ogni voto positivo o negativo non aggiunge automaticamente punti nel profilo degli utenti. Ma penso, è possibile dal modulo Punti utente . Dalla pagina del modulo Karma di Userpoints ho appreso che il modulo di voto su / giù consente a un elettore di aggiungere o sottrarre punti all'autore di un determinato nodo o commento, assegnando così o punendo l'autore per ciò che hanno scritto.
Quindi, ho configurato con successo il modulo voto / su , ecco uno screenshot di una vista del mio sito Web:
inserisci qui la descrizione dell'immagine
ora la mia domanda è: come aggiungere punti automaticamente per i voti usando il modulo voto / su e il modulo Punti utente? Quindi, se un utente vota un contenuto, l'utente lo farà per quell'autore del contenuto 10 + 5 = 15! {Ecco 10il punto utente precedente per l'autore del contenuto ed 5è il valore per ogni voto positivo!} Non riesco a capire come farlo automaticamente? Qualche idea? Grazie

Risposte:


6

C'è un modulo per aggiungere regole all'API di voto: http://drupal.org/project/voting_rules

I punti utente vengono forniti con supporto delle regole native.

Ho appena impostato il tutto sul mio ambiente di test, ho aggiunto una nuova regola con

Event: User votes on a Node

Condition: User has role(s)
Parameter: User: [vote:user], Roles: authenticated user

Condition: Check the value of the vote
Parameter: Vote: [vote], Operator: is greather than, Data value: 0

Action
Grant points to a user
Parameter: User: [vote:user], Points: 5, Points category: General, Operation: Insert, Moderate: Use the site defaul

informazioni aggiuntive: è necessario abilitare userpoint e userpoints_rules , nonché voting_rules

Ecco l'esportazione della regola

{ "rules_reward_voter" : {
    "LABEL" : "reward voter",
    "PLUGIN" : "reaction rule",
    "REQUIRES" : [ "rules", "voting_rules", "userpoints_rules" ],
    "ON" : [ "voting_rules_insert_node" ],
    "IF" : [
      { "user_has_role" : { "account" : [ "vote:user" ], "roles" : { "value" : { "2" : "2" } } } },
      { "voting_rules_condition_check_vote_value" : { "vote" : [ "vote" ], "operator" : "\u003E", "value" : "0" } }
    ],
    "DO" : [
      { "userpoints_action_grant_points" : {
          "user" : [ "vote:user" ],
          "points" : "5",
          "tid" : "0",
          "entity" : [ "" ],
          "operation" : "Insert",
          "display" : 1,
          "moderate" : "default"
        }
      }
    ]
  }
}

molte grazie per la rapida risposta, ma mi sto solo bloccando durante la configurazione delle condizioni nella regola? Se possibile, puoi descrivermi di più sul processo?
— rakibtg,

Ho fatto un aggiornamento su questo
— Andre Baumeier il

grazie mille per il tuo aiuto, lo applicherò e ti ;)
— busserò di

ho riscontrato un problema, un aumento del voto aumenta i punti utente per l'elettore ma non per l'autore! inoltre, per favore, fate qualcosa per il voto negativo (-5 punti) ... sono un principiante alla drupal ... a proposito, grazie per il vostro aiuto:)
— rakibtg,

Ho aggiunto la condizione. aggiornata la risposta :)
— Andre Baumeier,
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.