Favorites plugin provides a way to save favorites, likes, bookmarks, or any other similar types of data with customizable button text. In this article we shall add a button in the entry header’s post info on archives and single post pages to favorite posts along with favorite count for logged in members.

Non logged-in visitors will be set to see only the favorite count.

For members we can create a Page that shows the list of posts they have added as favorites and a button to clear the favorites.

While the tutorial has been written for Genesis Sample child theme it should work with minor adjustments in any Genesis child theme.
Step 1
Install and activate Favorites.
In this example since we want to enable Favorites only for logged in users, go to Settings > Favorites and untick “Enable Favorites”.

In the Display tab, enable the post types for which Favorites should be enabled and tick ‘Favorite Count’.

Step 2
Add the following in child theme’s functions.php:
| // Customize entry meta in the entry header to show Favorite button for logged in users and Favorites count for non logged in users | |
| add_filter( 'genesis_post_info', 'sk_post_info_filter' ); | |
| function sk_post_info_filter( $post_info ) { | |
| if ( is_user_logged_in() ) { | |
| $post_info = '[post_date] by [post_author_posts_link] [post_comments] [post_edit] [favorite_button]'; | |
| } else { | |
| $post_info = '[post_date] by [post_author_posts_link] [post_comments] [post_edit] <span class="favorite-count">Favorited: [favorite_count] times</a>'; | |
| } | |
| return $post_info; | |
| } |
Step 3
Add the following in child theme’s style.css and modify to suit:
| .entry-meta .simplefavorite-button { | |
| float: right; | |
| padding: 0; | |
| background-color: transparent; | |
| color: #333; | |
| text-transform: none; | |
| } | |
| .favorite-count { | |
| float: right; | |
| } |
Step 4
Create a Page titled say, Favorites having the following:
[user_favorites include_links="true" post_types="post" include_buttons="false"]
[clear_favorites_button]