WP Movie Ratings

WP Movie Ratings is a WordPress plugin perfect for movie fans who like to let the world know their opinion on what they’ve been watching. At its core is a bookmarklet, which combined with Internet Movie Database and a little bit of AJAX magic lets you rate movies with just one click. Also, there is no need to write the title of the movie as it is automatically fetched from imdb. Optionally, you can also write a short review for each movie. The output from this plugin is a list of recently watched movies, which you can put anywhere you want (it is a WordPress widget). Check out the live demo.

The published movie reviews are hReview compliant.

Download current version of the WP_Movie_Ratings wordpress plugin.

Latest stable version (for WordPress 2.8+): 1.8 (tar.gz, zip) (2019-10-13).

The current development version can be found at github.

Screenshots

Recently watched movies list:

WP Movie Ratings wordpress plugin in action (recently watched movies)

Bookmarklet in action (one click movie rating):

WP Movie Ratings wordpress plugin in action (Firefox bookmarklet)

Requirements

  • WordPress 2.8+
  • FTP, SSH or SCP access to your wordpress blog (so you can upload this plugin).

Installation

  1. Download the plugin.
  2. Extract the contents of the .tar.gz/.zip file into the WordPress plugins directory (usually wp-content/plugins). Alternatively you can upload them using ftp. You should have a new directory there called wp_movie_ratings (just along the akismet directory).
  3. Activate the plugin by going into your administration panel and selecting Plugins from the menu and clicking the Activate button for the WP Movie Ratings.
  4. Go to the Manage section in the administration panel and see the new Movies menu option there (you’ll find the bookmarklet there too). Rate at least one movie (using the bookmarklet or the administration page).
  5. Go to the settings section in the administration panel and under the Movies tab customize this plugin’s options.
  6. Customize your theme by adding a new Widget to its sidebar called “Movie Ratings”.
  7. Make a new page listing all your movie reviews by adding a new page in WordPress with this as its content: [[ wp_movie_ratings_page]].
  8. Go to your blog and see the movie ratings! :)

Upgrading

  1. Download the newest version of the plugin.
  2. Go to the Plugins section of the administration panel and deactivate the WP Movie Ratings plugin. Don’t worry as it will never ever delete any movie ratings.
  3. Go to the wp_movie_ratings plugins directory and delete all of the plugin files (should be wp-content/plugins/wp_movie_ratings). It will not delete any movie ratings (those are saved in the database). Be aware though, that if you’ve made any changes to the plugin, you might consider doing a backup.
  4. Extract the contents of the .tar.gz/.zip file into the wp_movie_ratings directory (wp-content/plugins/wp_movie_ratings).
  5. Go to the Plugins section of the administration panel and activate the WP Movie Ratings plugin (notice that higher version number of the plugin). The deactivation/activation cycle is required because of the new options that need to be written into the wordpress database (during activation).
  6. Enjoy life with the newest version of the WP Movie Ratings plugin!

FAQ

How can I have the ratings box displayed right after the first post?

Assuming you want to have movie ratings displayed on the front page of your blog, edit the index.php file. Find the line similar to this one:

<?php while (have_posts()) : the_post(); ?>

Change it so it looks like this:

<?php $first_post = true; ?>
<?php while (have_posts()) : the_post(); ?>

And then, inside the while loop find this line:

<?php endwhile; ?>

and make it look like this:

<?php
if ($first_post) wp_movie_ratings_show();
$first_post = false;
?>

<?php endwhile; ?>

And that should do it.

How can I create a separate page listing all of my movie reviews?

Create new WordPress page by selecting Write Page in the Write menu option of the administration panel and put this line as the page content:

[[ wp_movie_ratings_page]]

How to I make the imdb link open in a new window?

Open movie.class.php and change this line:

$o .= "<a class=\"url fn\" href=\"";

to

$o .= "<a class=\"url fn\" target=\"_blank\" href=\"";

What to do when the rating box is too wide?

Wrap the plugin function call in a fixed width <div>, like that:

<div style="width: 200px">
<?php wp_movie_ratings_show(); ?>
</div>

Your plugin is not working! All I get are (EmptyReference!) errors!

Stop using Adobe GoLive! as it is utter evil.

The bookmarklet is not working! Help!

Currently the bookmarklet works in Mozilla Firefox, Camino and WebKit. No IE, sorry.

Check if your blog’s home address is the same as your wordpress installation. If it is not (for instance when your website’s address is example.com and there sits your wordpress installation, but your blog is located at blog.example.com), then using this bookmarklet is not possible as that kind of AJAX calls are regarded as XSS and are blocked by Firefox (by default). You need to mess with your wordpress installation for it to work.

I’m using the Markdown plugin and I cannot create a movie ratings page!

Instead of writing:

[[ wp_movie_ratings_page]]

try

<!--wp_movie_ratings_page-->

and if that still does not work for you, wrap the call in a <p> tag, like this:

<p><!--wp_movie_ratings_page--></p>

or like this:

<p>[[ wp_movie_ratings_page]]</p>

How can I have the reviews shown when in page mode but hidden while in sidebar mode?

Go into settings in the administration panel and set all of the settings you want to have for the page mode. For the sidebar mode execute the following php code:

<?php wp_movie_ratings_show(6, array("sidebar_mode" => "yes", "include_review" => "no")); ?>

The first parameter of the wp_movie_ratings_show() function is the number of latest movie reviews to show. The second is the array of additional display options (all are optional). Here is the list of all the options you can set (hash array):

  • text_ratings – text ratings (like 5/10) instead of the stars,
  • include_review – include review with each movie rating,
  • expand_review – initially display expanded reviews when in page mode,
  • sidebar_mode – compact view for sidebar mode,
  • five_stars_ratings – display movie ratings using 5 stars instead of 10,
  • highlight – will highlight the stars of top rated movies,
  • page_mode – display all movie ratings on a separate page,
  • page_url – link to the movie reviews page,
  • char_limit – will cut any character in the title after this number,
  • only_not_rated – will select only not yet rated movies (‘yes’/’no’),
  • only_rated – will select only already rated movies (‘yes’/’no’),
  • order_by – default sort (valid only when used with combination of either ‘only_rated’ or ‘only_not_rated’) (‘title’/’rating’/’watched_on’),
  • order_direction – default sort direction (valid only when used with combination of either ‘only_rated’ or ‘only_not_rated’) (‘ASC’/’DESC’).

Other questions?

Just ask.

License

Released and available under the GNU General Public License (GPL) version 2 or later.

Known bugs

  • Bugs? What bugs?

TODO

v2.0 plans:

  • Convert movie ratings from separate database table to normal posts and assign custom tag to hide them from normal content (similarly to the sideblog plugin). Doing this will give us: integrated search for already rated movies, RSS feeds, comments under reviews, permalinks to each review.
  • Automatically fetch movie covers from amazon, fetch director, cast, rating, movie language from imdb (when adding a new review).
  • Automatic updates through the WordPress plugin administration panel.

Post v2.0 plans:

  • Use static methods of Movie class, like Movie::get_watched_movies_count() instead of what I’m doing currently (tested; works in PHP 4.4.x).
  • Different color schemes/images for different blog backgrounds (white/black/transparent) using different CSS selectable via panel option.
  • Dynamic graph chart showing the votes breakdown.
  • Automatic voting on imdb.
  • Amazon links ($$).
  • Bookmarklet working in Internet Explorer.
  • Implement vote history import from imdb.com (and somehow solve the watched_on problem as imdb doesn’t tell when the movie was rated).
  • Expand on the concept of this plugin being a general rating plugin, which will let you rate books and music too.
  • Implement multiple users ratings (for multi-author websites).
  • Automatically collect the movies you saw each month/week and post them on the blog.

Changelog

2015-11-19

  • full compatibility with WordPress 4.4+.
  • widgetization: added possiblity to display ‘Recent ratings’ in a widget
  • fetch original movie titles from IMDb (ie: use akas.imdb.com instead of just imdb.com) and display links to akas.imdb.com (instead of imdb.com)
  • fixed: make movies page pagination links XHTML standards compliant (& => &)
  • compatibility/deprecation fixes (some of them at least…)
  • release 1.7.

2010-10-14

  • full compatibility with WordPress 2.7.*, 2.8.*, 2.9.* and 3.0.*.
  • fixed: when ‘only_rated’ or ‘only_unrated’ option was used the ‘count’ argument the for wp_movie_ratings_show() function was ignored.
  • removed automatic pingerati.net pinging (pingerati.net is AWOL).
  • fixed: fetching movie title from IMDb (after IMDb has changed their website).
  • release 1.6.

2008-05-18

  • added option to add movies without rating them (only through the administration panel) (to create a list of owned just not yet seen dvds, for example).
  • added option to select all ‘only_rated’ or ‘only_not_rated’ movies using the wp_movie_ratings_show() function call.
  • char_limit option can now be passed as a parameter to the wp_movie_ratings_show() function call.
  • fixed problems making the movie reviews pages non XHTML compliant.
  • fixed error which prevented certain users from activating the plugin (the database table was not created).
  • fixed XHTML validation error in the bookmarklet.
  • release 1.5.

2006-11-18

  • fixed lots of rendering issues (problems in IE, Blue-k2 theme, Golden Gray theme, reviews not expanding, etc.).
  • completely rewritten encoding module, so now international characters as well as HTML should work correctly.
  • fix for Markdown markup – you can now use the alternate tag: <!--wp_movie_ratings_page--> to create a movie ratings page.
  • new feature: if no imdb link is given, the plugin will not look for the movie’s title on imdb. As a drawback, there can be now movies without imdb links (and without titles…).
  • new feature: ability to edit imdb links for already rated movies.
  • new feature: added pagination in page mode (so movie reviews can now span among several pages).
  • added option to disable pingerati.net pinging.
  • added option to highlight top rated movies.
  • added link from the recently rated movies list to the page with all movie ratings.
  • movies are now grouped together by month when sorting by view date in page mode.
  • added default movies sorting options for page mode.
  • added a new database field with optional link that is used instead of imdb.
  • added option to initially display expanded reviews in page mode.
  • added ability to edit movies directly from the displayed ratings list (in page mode too).
  • release 1.4.

For previous changes check out the changelog file within the plugin’s archive.

Similar plugins

594 thoughts on “WP Movie Ratings”

  1. Hey, I watch loads of movies, and want to incorporate a star rating review system to my site… so far though; as much as I like it, I want each review to be posted as an individual post. Does that make sense? As in, when I write a review a movie, it should be in its very own post. I’m not sure if I’m making sense, can this be done with your plugin? If so, can you show me how? Or direct me maybe to another plugin that you might know does this?

  2. hubs -> You must be running some other plugin which is inserting <br /> tags. Try disabling your plugins one by one to see. If you find the culprit please do contact me via email and I’ll see what I can do about it.

    Erika -> That will be coming in v2.0. For now you can use my plugin as it is or try the one suggested by hubs.

  3. It’s is so weird. By messing around with some of the options i was able to get the stars to align horizontally but now everything is five stars. Something here is definitely wonky.

  4. hubs -> I believe that the problem lies with the fact that you’re trying to have my plugin running as a normal wordpress post and that as such is not recommended (better to use the php code in the theme’s files).

  5. hubs -> You’re using a custom modification of my plugin so I cannot help you directly. You just need to mess with CSS and plugin’s options to have everything as you want.

  6. sean -> There’s no need to do that (only the bookmarklet uses prototype) but if you insist it should be fairly easy as I’m using maybe two components from the prototype library (ajax being one). Update: since WordPress now uses (and includes) the jQuery library I’m considering switching to it.

  7. hey paul
    GREAT plugin. thanks for making all of us look so good and sleak.

    1 quick question.
    i now understand the different between “Recently reviewed movies” and the “movie review page” in that the “Recently reviewed movies” shows the latest 5 (or however many predefined) movies reviewed and the “movie review page” shows all movie reviews.

    what i want to know is if it is possible to have the “Recently reviewed movies” as a dated post, as opposed to the current method of a permanent inclusion into the template (?php wp_movie_ratings_show(); ?>)

    please let me know if i’m being unclear about this. basically i want to have this “?php wp_movie_ratings_show(); ?>” in a post, but obviously wordpress posts cannot have working php tags. i even tried using a separate plugin (exe-php) to try to execute the php tag in a post, but to no avail.

    appreciate any help on this.

    thanks again.

  8. fish8me -> I’ve seen it working on some blogs the way you want it to. I believe they were using php-exec or similar plugin. There were other problems with it, though (mostly html/css related). I would not recommend using it like that.

  9. “Convert movie ratings from separate database table to normal posts and assign custom tag to hide them from normal content”

    I, for one, cannot wait until you do this! Thanks in advance.

  10. Excellent plug-in for frequent movie review bloggers! Thank you so much for you hard work that you invested in this little gem. In the process of incorporating it into my blog, I found some XHTML validation errors, so I went ahead and fix them. There are still some errors in my movie page, I am trying to debug them. Just thought to let you know, so maybe you can fix them in the next release. Once again, thank you!

  11. First of all, thanks for a great plug-in! I had been looking for something like this…

    But there seems to be a problem with long movie titles – they’ll overlap the stars. For example: “Anchorman: The Legend of Ron Burgundy (2004)” – see an example on my site:
    http://www.officialstation.com/kvikmyndir/

    Maybe you could cut off long titles (after an X number of characters) and just put “…”
    – or place the stars in a new line above or below the title.

    Just wanted to let you know.

  12. Hannes -> go into “Options/movies” in your wordpress administration panel and see/set the option “Cut movie title at:”. You can have the star ratings in new line too – just activate the sidebar mode. I recommend reading the faq.

  13. Paul, any progress on the feature that all authors can access your plugin in a group blog site. Currently only the admin can.

  14. A sincere thank you for this plugin. It was exactly what I needed.
    I wanted to post what I ran into just in case someone else ran into the same thing. I’m not sure what is unique about my setup but in order to get the plugin to work I had to go through each of the PHP files and replace <?= with <?php print

    Once I did that everything started to work as expected. Any ideas?

    Thanks again,
    JW
    http://www.evolv3.net

  15. Great plugin, definitely something that was needed. But, naturally, immediately after I get something for the site that rocks, I’m looking for something new that it could do! LOL

    What I’d love to see in a future version:

    1. Make it available to multiple authors, and show who wrote which review.
    2. Change the layout so that it explicitly gives an option for a ‘full’ review.
    3. An option to change the ratings graphic and the range — including negative ratings. Why negative ratings? I tend to review crappy B-movies, so, a ‘good’ movie would tend to rate somewhere in the positive range, whereas as crappy b-movie would be better if it had a ‘more’ negative score.
    4. If the rating scale could integrate into a full review post, that would make it completely indispensable.

    So there’s my wish list. Great plugin!

  16. for russian users – for correct charset change charset of table “wp_movie_ratings” to utf8_general_ci

  17. Hi Paul,

    Are you still working on this? I’m just starting to ramp up my blogging again, and this plugin may feature quite significantly in my plans ;)

    Regardless, it’s a great piece of work.

  18. Hey, I installed the plugin, wrote a new page called movies, and added the [[wp_movie_ratings_page]] and saved it.

    I tried to klick on the new page, but it got “404, not found”-message.

    I tried with
    wp_movie_ratings_show();

    No luck there either.

    What should I do?

  19. Hi Paul,
    I am new to wordpress and I want to create a movie review site. I am looking to create one similar to “http://www.dvdinmypants.com/” that gives you the movie title and an image along with that title. Will your plugin get the movie details and image for the movie from the Imdb web site.

  20. 2 Flector Says: “for russian users – for correct charset change charset of table “wp_movie_ratings” to utf8_general_ci”

    Thank you so much! It works wonders!

  21. AWESOME plugin.

    I’ve been searching for something like this for a lo-o-o-ong time.

    Question: Why not use the Tiny MCE editor instead of a textbox?

    This would make it SOOO much easier to prettify the reviews.

Comments are closed.