私のdrupal 7サイトには、作成者のコンテンツに対するユーザー評価システムがありますが、問題は、すべての賛成投票と反対投票がユーザーのプロファイルにポイントを自動的に追加しないことです。しかし、それは可能だと思います ユーザーポイントモジュール による ユーザーポイントカルマ モジュールページから 投票/上へ モジュールは、有権者がポイントをポイントに追加または削除できることを学びました特定のノードまたはコメントの作成者。これにより、彼らが書いたものに対して著者に裁定または罰を与えます。
それで、 vote/up down モジュールを正常に構成しました。これは私のウェブサイトのビューのスクリーンショットです:
今私の質問は、 vote/up down module と ser Points module を使用して、投票のためにポイントを自動的に追加する方法ですか?したがって、ユーザーがコンテンツに投票した場合、そのコンテンツ作成者のユーザーポイントは10 + 5 = 15
になります。 {ここで10
はコンテンツ作成者の以前のユーザーポイントであり、5
はすべての賛成票の値です!}自動的に行う方法がわかりません。何か案は?ありがとう
投票APIにルールを追加するモジュールがあります: http://drupal.org/project/voting_rules
serpoints には、ネイティブルールがサポートされています。
私はテスト環境にすべてを設定し、新しいルールを追加しました
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
追加情報:userpointsおよびuserpoints_rulesおよびvoting_rules
これがルールのエクスポートです
{ "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"
}
}
]
}
}