Skip to content
This repository has been archived by the owner on Jul 25, 2023. It is now read-only.

WordPress Post Like System

Compare
Choose a tag to compare
@JonMasterson JonMasterson released this 29 Oct 00:35
· 20 commits to master since this release

A simple and efficient post like system for WordPress.

Updates for Version 0.5:

  1. You can now add the button to comments.
  2. You can now add multiple buttons for each post, and they will all update at once when you click any of them.
  3. SVG icons. In an effort to keep things light, the SVG has been added inline, with a simple html entity as a fallback. This way, we don't have to include a javascript fallback. The trade-off is that these inline icons are not cached. They are rather small, though. If you prefer to use Font Awesome or another icon solution, swap out the svgs in the get_liked_icon() and get_unliked_icon() functions with your own solution. Since it is a popular solution, I've included commented code for Font Awesome icons.
  4. The button will now work with or without javascript. Hooray for graceful degradation!
  5. All the text is now translatable. Find and replace 'YourThemesTextDomain' with your theme's text domain.
  6. Number formatting now included. For example, a like count of "1,250" will output as "1.25K". If you would prefer a different number format, update sl_format_count(); to your preference.
  7. Better IP address handling
  8. The time of the post/comment like is now recorded as post/comment meta. This allows us to properly perform proper meta queries to determine which posts have the most likes for a given time period.
  9. CSS only loader.
  10. Removed list queries.
  11. We no longer store an array of liked posts in user meta. As time goes by, this can lead to inconsistencies if posts are deleted. I could have built a clean-up function to find and remove deleted post ids from user meta, but it made more sense to stop adding this data to user meta. Especially since these posts can be retrieved with a meta query for all posts that have the user's ID attached (see show_user_likes(); for this query).