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’s a matter of one simple function call from the template). 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.6 (tar.gz, zip) (2010-10-14).

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. Edit your blog template (it’s probably the best to edit the index.php file from your current theme) and put this line there:
    <?php wp_movie_ratings_show(); ?>
    

    If you want to have movie ratings listed in the sidebar, you must, of course, edit the sidebar.php file from your current theme (be sure to set the sidebar mode in the settings panel too!). Alternatively you can create a new post/page and type it there:

    [[wp_movie_ratings_page]]
    

    It will create a listing of all rated movies sorted by title.

  7. 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 ($$).
  • Turn the plugin into a widget.
  • 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

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 Responses to “WP Movie Ratings”

  1. Sidh says:

    Hi,I am using wordpress 2.8. After activating the plugin, I could only see the ‘Movies’ menu from the settings. I could not see the ‘Bookmarklet’ option. Hence after saving the settings, I could see the message in the widget like this “No movies rated yet! Go and rate some. Now. ”

    I am not able to view the bookmarklet. I am checking this option at the localhost.

    How to rate the movie ? I did create a user account in imdb.com, I selected few movies under different categories.But not able to display those movies in my sidebar.

    Any help on this is highly appreciated.
    Thanks for this wonderful utility.

  2. @Sidh: You’re doing it wrong. You rate your movies either via the
    administration panel (search for Tools/Movies and then Add a new movie
    rating) or via the bookmarklet (search for it on the same page) while
    browsing the imdb.

  3. elusyn says:

    Hello.
    1st of all congratulations on this great plug in.
    just want to know if its possible to the review always being views instead of cliquing the little cross and how do “divide” movies by year? For example a page for each year ( 2009,2008, etc…)

    Thanks in advance =)

  4. @elusyn: try searching the options for “always display expanded reviews” or check the expand_review function parameter. As for the year division – it’s not possible in the current version (although I’ve planned adding that).

  5. elusyn says:

    Yeah, sorry… i didn’t notice in options, i apologize =)
    I also notice that we can choose the way it sort… but its missing by year, that is definitely what i need because I have a lot of movies in iMDB ( around 2000 )… just will try to add them by year since theres no way to auto-retrieve the data.
    thanks for the quick answer =)

  6. y4 says:

    What’s the solution? Problem:

    Warning: fsockopen() [function.fsockopen]: unable to connect to imdb.com:80 (Connection timed out) in /home/yalcin/public_html/wp-content/plugins/wp_movie_ratings/wp_http_request.class.php on line 60

    Warning: fwrite(): supplied argument is not a valid stream resource in /home/yalcin/public_html/wp-content/plugins/wp_movie_ratings/wp_http_request.class.php on line 61

    Warning: fclose(): supplied argument is not a valid stream resource in /home/yalcin/public_html/wp-content/plugins/wp_movie_ratings/wp_http_request.class.php on line 66

  7. @y4: talk to your host admin so that you have access to other websites unblocked (from your host). Or just paste imdb link and title, so it does not go to imdb.com to fetch movie title.

  8. y4 says:

    its done when i paste imdb link and the title of the movie. thanks so much, paul.

  9. Carl says:

    Hi!

    I’d like to once in a while make a separate post with a movie review, and I noticed that I could use the [[wp_movie_ratings_page]] tag, but I don’t want all my revies in taht post, I only want the one I reviewing at that moment, is it possible to separate the reviews, or do they come all as one package?

  10. @carl: not possible. Find/use another plugin for that.

  11. great plugin! Thanks…

  12. Oguz says:

    When you release the newer version? for 2.9.2

  13. Kenneth says:

    As Oguz says, when will their be a new updated version? I think it’s the best plugin for movie ratings but the age of the current version worries me a bit. So based on the comments here, it’s popular so…work, work, work!!

  14. for all of you who have troubles with the offered 1.5 version here on this page: go to the github repository @
    http://github.com/pjg/wp_movie_ratings/commits/master

    and download the very actual version via “download sources”. with this sources my wordpress 2.9 installation works fine.

  15. Ben says:

    hi

    i have german wordpress

    I could only see the ‘Movies’ menu from the settings. I could not see the ‘Bookmarklet’ option. Hence after saving the settings, I could see the message in the widget like this “No movies rated yet! Go and rate some. Now. ”

    I am not able to view the bookmarklet. I am checking this option at the localhost.

    How to rate the movie ? I did create a user account in imdb.com, I selected few movies under different categories.But not able to display those movies in my sidebar.

    Any help on this is highly appreciated.
    Thanks for this wonderful utility.

  16. @Ben: uhm, go to Tools/Movies and you should be able to rate movies from there. There you’ll find the bookmarklet too.

  17. adastra says:

    The bookmarklet is not working for me (WP 3.0), and it also doesn’t recognize that I want to use 5 star ratings instead of 10. Will there be an update to fix these issues soon?

  18. AHHHHHHHHHHHH says:

    AHHHHH, it dosnt work for me either! got issue with 3.0

  19. Bill says:

    To fix the bookmarklet in WordPress 3, open add_movie.js and replace “edit.php” with “tools.php”

  20. AHHHHHHHHHHHH says:

    AHHHHHH, It dosnt work changing the edit.php to tools.php!

  21. AHHHHHHHHHHHH says:

    sugestions how i can change the language? show me a pice of code please!

  22. adastra says:

    I would like to use the RSS feed, which is not working. Any ideas how to fix it?

  23. Hannes says:

    I don’t know if imdb.com changed something but suddenly there is an extra ” – IMDb” in the title of the movies on my review page. (Example: “The Town (2010) – IMDb”). It has always been e.g. “Dinner for Schmucks (2010)”.

  24. IMDb has added this bit to their page. I’ll fix it in the upcoming week.

  25. @Hannes: The fix is now at github. Who knows, maybe I’ll release a new version too.

  26. santacroce says:

    Hello, for my personal need I just evolved your plugin adding some year filtering. The user has on a vertical column the years and the total number of movies for that year as category. The user clicks on the year and sees all the movies he viewed for that year. If you want to have a look at the code or extend it to the next version let me know.

  27. Jesper says:

    Thank you for this plugin! A quick pitch for a feature: It would be great if it was possible to sort movies with respect to their year of release. But I guess you modern people don’t know that all the best movies where made back in the days, back then they used to have a manuscript (aka. intelligent dialogue and plot), and therefore didn’t have to rely on flashy pictures and loud noise.

  28. @Jesper: yes, I was thinking about incorporating it some day. But as the development is stalled…

  29. Jesper says:

    Oh, I didn’t know that. I’m sorry to hear that, but thanks again for the script.

  30. Hannes says:

    I updated to 1.6 from github and now I always get this error when posting a review through the bookmarklet:
    “Error: movie rating not added. Perhaps you are not logged in?”
    – but I am logged in and the review is actually successfully posted to my page.

    Any ideas?

  31. @Hannes: hard to say. The bookmarklet is a hack and as such it is vulnerable to any changes you might have in the administration panel (like some plugin modyfing the look or functionality of it). Try vanilla wordpress installation with just my plugin and go from there.

  32. Asbjørn says:

    Hi Paul. I’ve been using your plugin for a few years now, and never actually had a serious problem with it. Thanks for keeping it updated!

    A minor thing that is bugging me though: I’m from Norway, and although I’m logging in on IMDb with settings showing the original titles (US movies in English, French movies in French, etc.), when I add movies to my WP Movie Ratings-list, they show up with a Norwegian translated title (if IMDb has one). Thus “Outland” from 1981 becomes “Operasjon Outland”.

    Is there a simple solution for this? Maybe a line of code or something that I could paste into the plugin?

  33. @Asbjørn: get the latest version from GitHub, it uses the akas.imdb.com to fetch original titles. I haven’t yet found a way to fetch English titles, though.

  34. Graham says:

    Does not seem to work withing widgets

  35. Asbjørn says:

    Seems to be some sort of IMDb-update today that causes an error for the plug-in not retrieve movie titles. Or is it a local problem (me)?

  36. @Asbjørn: I’m experiencing the same issue. Will see what I can do about that.

  37. Asbjørn says:

    @Paul: Thanks. Love the GitHub-hosting for the code by the way. Not having to update the whole file, just the changes.

  38. Hannes says:

    Is there a chance the plug-in doesn’t work in WordPress 3.3? I’m getting “Error: movie rating not added. Perhaps you are not logged in?” even though I’m logged in.

  39. Hannes says:

    ..and it looks like the review is recorded despite the error :)

  40. @Hannes, guess I’ll have to fix it for 3.3. Thanks for the report.

  41. Asbjørn says:

    Hi. I’ve been using your plugin for many years now. Thank you very much for the plugin and the support over the years!

    I recently decided to take it down, though. Reason is I do not have that many blogreaders left and IMDb is enough for me personally.

    If your plugin would extract the vote and date automatically I would still use it, but I know and have read that there is some data which is not possible to extract. So I understand why this is not in a plugin.

    Anyway. Just a thank you for your plugin and time over the years!

  42. @Asbjørn thank you for the honest testimonial. Really appreciate it!

  43. I’ve been looking for a plug in like this for a while now. Going to try it out, thanks for helping the community out by making this.

Leave a Reply