With the Rate module, you are not limited to choosing a template provided by the module. You can also create a "Custom" widget type. In this video, I will show you how to do just that.

Creating Custom Widget

Add widget

  • Go to "Structure => Rate widgets" (admin/structure/rate)
  • Widget type: Choose "Custom"
  • (Next)

Widget Configuration Page

  • Title: How helpful is this article?
  • Tag: Helpfulness

Notice that we now have the options for "Value type", "Options" and "Translate options"

  • Value type (This determines how vote results are totaled)
    • [ ] Percentage (Votes are averaged.)
    • [ ] Points (If enabled, votes will be added together.)
    • [x] Options (This lets you specify options, and votes for each get added together. Also the "buttons" displayed by the widget are generated as HTML links)
  • Value: 1 (When you select options for the value type, the value will only be used for storage, so you may use any number as long as the values are unique from the other options.)
    • Label: Not at all helpful
  • Value: 2
    • Label: Not very helpful
    • (Add another option)
  • Value: 3
    • Label: Somewhat helpful
    • (Add another option)
  • Value: 4
    • Label: Very helpful
    • (Add another option)
  • Value: 5
    • Label: Extremely helpful
      *[x] Translate options (This checkbox determines if the labels used for the options should be translatable.)

Node Types

  • Name: Article
    • [x] Node

Display Settings

  • Appearance in full node: Choose "Full widget"
  • Appearance in teaser: Choose "Display only, compact"

Permissions

  • [ ] Allow author to rate his/her own content
    • Behavior when user has no permission to vote
  • [x] Show a disabled widget (with non clickable buttons)
    • (Save)

Let's switch to safari, and below the content of Article #1, we'll see the "How helpful is this article" question and we can cast our vote by clicking the link that corresponds to our opinion. I'll click "Extremely helpful".

In the next video, we'll take a look at the "Voting results" of each Rate widget, and use the Chart module to display the results in a more visual way.