Hop Social Suite
Current Version: 3.0.7- EE3
- EE4
- EE5
- EE6
-
Installation for EE 3+
- Unzip the folder to a temporary location on your local hard drive.
- FTP the files from their local folders to the same locations in your EE install’s /system/user/addons/ folder on the server.
- Navigate to Add-ons in your EE control panel and install the add-on. That’s it!
-
Installation for EE 2
- Unzip the folder to a temporary location on your local hard drive.
- FTP the files from their local folders to the same locations in your EE install’s /system/expressionengine/third_party/ folder on the server.
- Navigate to Modules in your EE control panel and install the add-on. That’s it!
-
Authentication
Twitter
To get Twitter API credentials, go to https://apps.twitter.com/, login to your account and create a new app.
Facebook
To get Facebook API credentials, go to https://developers.facebook.com/docs/apps#register, login to your account and add a new app. You need to:
- Authenticate the App (Business or Individual)
- Be the admin of your facebook page
- Follow the instructions to get your Facebook App Token
Authentication for the Page Access Token
- Go to Graph API Explorer.
- Select your application in Facebook App.
- Select Get User Access Token under User or Page.
- Make sure you have the following permissions: pages_show_list, pages_read_engagement, pages_read_user_content.
- Click Generate Access Token.
- Next to Access Token, choose the page you want an access token for. The access token appears as a new string.
- Click ⓘ icon to see the properties of this access token.
- Click Open in Access Token Tool button again to open the Access Token Debugger tool to check the properties.
- Click Extend Access Token and you should see This new long-lived access token will never expire: and another Access Toekn.
- Click Debug beside the new Access Token.
-
Paste in the settings from Access Token Debugger -> EE accordingly.
- App-Scoped User ID -> Facebook User ID
- App ID -> Facebook App ID
- Extended Access Token (in the top field) -> Facebook App Token
- On the EE Hop Social Suite settings screen, click the Exchange for Facebook Page Access Token button to acquire the page access token that can fetch posts from Facebook.
You’ll need to re-authenticate for the facebook page access token at least once every 2 months by clicking the Exchange for Facebook Page Access Token button. Facebook Documentation Reference
Instagram
Please visit https://developers.facebook.com/docs/instagram-basic-display-api/getting-started for guide to set up your Instagram Basic Display app. For Valid OAuth Redirect URIs please enter your site_url. HTTPS is required.
- Once ready, on the EE Hop Social Suite settings screen, fill in the Instagram App ID and Instagram App Secret.
- Then click the Authenticate Instagram Basic Display app button.
- You’ll be prompted to login to your instagram account for authorization.
- Once confirmed, you will be taken back to the site and everything should be set up properly.
You’ll need to re-authenticate for the instagram access token at least once every 2 months by clicking the Authenticate Instagram Basic Display app button.
-
Usage
Choose from the simple implementation or customize more fully using the timeline tag pair.
Simple
{exp:hop_social_suite:simple}
Timeline
{exp:hop_social_suite:timeline}
-
Examples
Simple
{exp:hop_social_suite:simple twitter_search_query="#eecms" limit="10"}
{exp:hop_social_suite:simple facebook_min="3" facebook_max="5" twitter_min="6" instagram_max="1" limit="20"}
Timeline
{exp:hop_social_suite:timeline facebook_min="3" twitter_min="3" instagram_min="3" limit="10"} {if no_results} No recent social media posts. {/if} {if count == 1} <p>We got {twitter_count} tweets, {facebook_count} facebook posts, and {instagram_count} instagram media items for you.</p> <p>Total posts count: {total_results}</p> {/if} <h3>{social_network} {count}</h3> <ul> <li>text: {text}</li> <li>text_url: {text_url}</li> <li>text_no_url: {text_no_url}</li> <li>date: {date}</li> <li>post_url: {post_url}</li> <li>from: {from}</li> <li>profile_url: {profile_url}</li> {if social_network == 'Twitter'} <li>screen_name: {screen_name}</li> <li>retweets_count: {retweets_count}</li> <li>favorites_count: {favorites_count}</li> <li>profile_picture: {profile_picture}</li> <li>retweet_url: {retweet_url}</li> <li>favorite_url: {favorite_url}</li> <li>reply_url: {reply_url}</li> {/if} {if social_network == 'Facebook'} <li>picture: {picture}</li> <li>picture_hd: {picture_hd}</li> <li>reactions_count: {reactions_count}</li> <li>shares_count: {shares_count}</li> <li>comments_count: {comments_count}</li> {/if} {if social_network == 'Instagram'} <li>thumbnail_url: {thumbnail_url}</li> <li>media_type: {media_type}</li> <li>media_url: {media_url}</li> {/if} </ul> <hr> {/exp:hop_social_suite:timeline}
-
Parameters
These parameters can be used with either the simple or extended timeline implementation.
twitter_username Retrieve tweets from the specified username. This overrides the default Twitter username setting.
twitter_search_query Retrieve tweets matching the query. Refer to Twitter’s Advanced Search to understand how to customize your search query. If this option is used, Hop Social Suite will ignore the Twitter default username and twitter_username passed in (if set) in the tag.
Note the search index has a 7-day limit. In other words, no tweets will be found for a date older than one week.
twitter_include_rts Include retweets (default: yes) The count always includes the retweets so setting this to ‘no’ may get an insufficient amount of tweets intended.
limit Specify how many posts in total to display. This overrules all the minimum and maximum settings.
twitter_mi Specify at least how many tweets should display.
twitter_max Specify the max number of tweets to display.
facebook_min Specify at least how many Facebook posts should display.
facebook_max Specify the max number of Facebook posts to display.
instagram_min Specify at least how many Instagram posts should display.
instagram_max Specify the max number of Instagram posts to display.
-
Updating
Updating is easy:
- Download a new version from this website, and extract on your hard drive.
- Upload the new files to their appropriate locations.
-
Uninstalling
- Navigate to the Add-Ons > Modules tab in your EE control panel and uninstall the module.
- Remove the add-on directory from your EE system folder on the server.
-
Future goals
We’re working hard to get the Instagram Graph API integrated so that you can link your Instagram business account for more feature. We also plan to adapt the new Twitter 2.0 API. Stay tuned!
-
Version History
Last updated: one year ago
3.0.7 - 2021-10-15
Fixed
- Update bugs from Hopsuite
- Facebook reactions, comments, and shares fallback value
3.0.6 - 2021-06-10
Updated
- README and add-on description
Removed
- Unnecessary icon CSS invert code
3.0.5 - 2021-01-28
Fixed
- Making sure extensions are installed when upgrading from 2.2.6
3.0.4 - 2020-12-30
Fixed
- Bug in update script
3.0.3 - 2020-12-17
Updated
- More robust icon lookup for EE6
3.0.2 - 2020-12-09
Fixed
- Extension icon bug in EE5
3.0.1 - 2020-12-08
Fixed
- Cache default to true
3.0.0 - 2020-12-08
Updated
- Hello EE6!
- Instagram Base API
- Facebook API v9.0
Added
_min
and_max
for social mediano_results
- Authentication for Facebook and Instagram one-click solutions
Changed
- Twitter query string search now takes priority over the username search
- Facebook and Instagram feed_id no longer required
Deprecated
_count
parameters no longer works, use_min
and_max
instead
2.0.1 - 2019-02-11
Include twitter full-text changes from ee3x/ee4x in ee2x version.
2.0.0 - 2019-02-06
Rename from “Hopsuite” to “Hop Social Suite”
1.1.4 - 2018-03-19
Add picture_hd tag for Facebook posts
1.1.3 - 2017-11-23
- Ready for EE4
- Update Facebook API to 2.10
- Allow multiple Facebook page ids
1.1.2 - 2017-09-08
Add new tag {post_url}
1.1.1 - 2017-03-06
Fix bug with {text} tag for Facebook posts
1.1 - 2016-07-11
Now using Facebook App Id and App secret
1.0 - 2015-04-27
Initial Release