=== Easy Social Feed - Social Photos Gallery and Post Feed for WordPress ===
Contributors: DaNish Ali, maltathemes, sjaved, freemius
Tags: Instagram feed, Facebook feed, YouTube feed, X feed, Social media feed, Instagram photos, Instagram gallery, Facebook posts, YouTube videos, YouTube gallery, Twitter feed, Twitter timeline
Requires at least: 3.3
Tested up to: 7.0
Stable tag: 6.7.8
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Display Instagram, Facebook, YouTube & X/Twitter feeds with photos, videos, reels, events & galleries. SEO/AEO friendly, fast & easy to set up.

== Description ==

Easy Social Feed helps you display your latest **Instagram photos and videos, Facebook page posts and events, YouTube videos, and X/Twitter timeline posts** on your website. It is responsive, **SEO, AEO and GEO friendly**, easy to set up and offers live preview customization for appearance and layout.


Connect your account using the latest secure oAuth login and get a shortcode auto-generated. No app review required. Manual access token support is also available for Personal or Business accounts.

You can enable only the module you need (Facebook, Instagram, YouTube or X/Twitter) so unrelated code is not loaded, improving performance.

After connecting your account, **simply copy and paste the shortcode, or use a block or widget**, to embed your feed anywhere on your site.

## Watch how Easy Social Feed works:  
[youtube https://www.youtube.com/watch?v=9ZvHmlozcHA]

*"**This Plugin Rocks!** I have tried a few other plugins, which either didn’t work right out of the box, or failed to work after a week.
THIS plugin is like magic. It was simple to install, activate, connect my Facebook pages, and add the widget.
And, it looks beautiful as can be seen on my page.
Thank you for making this plugin!"* - [sayhi2lonnie](https://wordpress.org/support/topic/this-plugin-rocks-61/)

See what hundreds of users say, reviews on [WordPress.org:](https://wordpress.org/support/plugin/easy-facebook-likebox/reviews/?filter=5)

## Instagram Feed

Display photos, videos, reels, stories and gallery posts from your Instagram account in multiple designs with full control over styling.

### Features
- **One minute** setup. Easy setup flow to configure and go live in minutes
- Quick secure oAuth connection (no app review needed)
- Manual access token support (Personal & Business)
- Multiple layouts: **Grid, Masonry, Full-width, Half-width, Row, Carousel**
- **SEO, AEO & GEO friendly** server-rendered feeds with structured data for search and AI discovery
- Live preview customization of colors, spacing, borders, font sizes, etc 
- **Load More** button for unlimited posts (Pro) 
- Header display and Follow button toggle
- Auto-generated shortcode after connection
- Powerful **shortcode generator**, you don't need to mess up with shortcode attributes
- **Multiple-feeds** - There is no limitation to display the number of feeds on your site. Our shortcode and blocks work independently.
- Popup lightbox for media with navigation (Pro)
- **Hashtag feed** support (Pro)
- Featured posts option (Pro)
- Images and Videos gallery - Display multiple images in a gallery carousel (Pro)
- Custom links (shoppable posts) option (Pro)
- **Visual moderation** show or hide posts from feed (Pro)
- Likes and Comment display in popup (Pro) 
- Priority support (pro)- Above all, We stand firmly behind our plugin and provide top-notch priority support to the premium plan users via email.
- And much more in the pack!
- Many more features to come

[Demo](https://easysocialfeed.com/my-instagram-feed-demo)

*"**Much better than the others** - I’m really happy with this – and it’s better than the other plugins I’ve tried that offer the same thing. Thank you!" [sarahtaylor777](https://wordpress.org/support/topic/much-better-than-the-others-2/)

## Facebook Feed
Display Facebook page posts including images, videos, links, status, albums, events and more - fully styled and responsive.

### Features
- Support for posts, photos, videos, links, status updates and albums
- Event feed display with details (Pro)
- **Responsive** layouts for all devices
- **Live preview** customization for styles
- Multiple layout options: Full-width, Half-width, Thumbnail, Row, Grid, Masonry, Carousel
- Caption words limit - Limit the number of words to display in the story on your site
- **PopUp** - Display images, videos, and albums in the advanced popup so your users never leave your site again. Also, navigate between post images using next and previous links in the popup
- **Super fast** - Cache - It caches the posts, images and other content from Facebook and Instagram to minimize external requests to load the page faster.
- **Multiple-feeds** - There is no limitation to display the number of feeds on your site. Our shortcode and widgets work independently.
- **Merged Feed** - Display multiple pages feed in a single feed using shortcode or block
- **Visual moderation** show or hide posts from feed (Pro)
- Post-type filtering (photos, videos, events, etc.) (Pro)  
- Auto-generated shortcode + block/widget support
- Share - Share buttons with each post in your feed to make it even more viral on social media.
- Read more - Read more button to read the full story on Facebook.
- Powerful **shortcode generator**, you don't need to mess up with shortcode attributes
- Post images & videos gallery - Display all images and videos in the gallery carousel in PopUp (Pro)
- Advanced PopUp (pro)- Replaces the current PopUp with advanced and super-fast PopUp. Give your feed a look like FB so your users do not leave your site ever
- Display Likes and Comments
- Featured posts option (Pro)
- And much more in the pack!
- Many more features to come

[Demo](https://easysocialfeed.com/custom-facebook-feed/)

## YouTube Feed

Display your latest YouTube videos in a clean, responsive YouTube channel feed that fits your theme. Connect your channel, create a feed, and embed it anywhere using shortcode (a PHP snippet is also included).

You can customize the layout and header, add per‑feed custom CSS, and control caching from the same Easy Social Feed interface for Facebook and Instagram.

[Demo](https://easysocialfeed.com/custom-youtube-feed/)

### Features
- Secure Google OAuth connection to connect your YouTube channel
- **SEO, AEO & GEO friendly** server-rendered video feeds with structured data for search and AI discovery
- Accounts dashboard to manage connected channels (reconnect/refresh and disconnect)
- Bulk actions for managing accounts (when multiple accounts are available)
- Create unlimited feeds and embed each feed using a unique shortcode(Pro)
- Feed editor with Connect, Customize and Embed panels and a live preview workflow
- Responsive grid layout with control over columns and spacing for desktop, tablet and mobile
- Header controls for channel branding and key channel details
- Per‑feed settings for what to show on video cards (thumbnail, title, date and more)
- Smart caching with configurable refresh duration for faster loading and fewer external requests
- Clear all caches from settings and clear cache for a single feed from the feeds list
- Per‑feed Custom CSS with helper selectors so advanced styling stays easy and organized
- Pro: **Load More** button to show more videos without reloading the page
- Pro: **Popup / Lightbox** video gallery with rich details and stats (views, likes, comments)
- Pro: Popup options for autoplay, mute, and showing description and stats

## X / Twitter Feed

Display an X (Twitter) feed on your site with a clean, responsive design and live customization controls. Connect your own account with OAuth, or add public accounts by username and embed feeds anywhere with shortcode.

[Demo](https://easysocialfeed.com/custom-twitter-feed/)

### Features
- Secure OAuth connection for your own X/Twitter account
- **SEO, AEO & GEO friendly** server-rendered timeline with structured data for search and AI discovery
- Pro: Add public X accounts by username (no app setup on your site)
- Feed editor with Connect, Customize and Embed panels and live preview
- Responsive timeline layout with header, stats and tweet card controls
- Auto-generated shortcode for quick embedding in posts, pages and widgets
- Smart caching with configurable cache duration for faster page load
- Per-feed Custom CSS support for advanced styling
- Pro: **Load More** pagination for progressive tweet loading
- Pro: **Popup / Lightbox** for tweet media with gallery and video support
- Pro: Multiple accounts

## Facebook Page Plugin (Like Box)
Embed the Facebook Page Plugin to display page likes, faces, timeline or events using shortcode and widget.

### Features:
- Responsive and mobile friendly  
- Show or hide faces and header  
- Custom width and height settings  
- Support for 75+ locales  
- Timeline, Events and Messages tabs (Pro)

[Demo](https://easysocialfeed.com/faceook-page-plugin)

---

*"**Easy to use as the description** - awesome plugin and excellent support, easy to set up and more function, won't affect the page speed, GREAT JOB!"* [alexwee88](https://wordpress.org/support/topic/easy-to-use-as-the-description/)

## Performance & Settings
- Smart caching for posts & media to minimize API calls and improve speed  
- Lazy loading support
- Option to load only active modules (disable unused modules for performance)  
- Configurable feed refresh intervals
- AI translation autofill on the Translation tab (Pro) to translate and fill feed labels into your selected language with one click  
- **SEO, AEO & GEO optimized** - Server-rendered feeds with semantic markup and JSON-LD structured data (Instagram, YouTube & X/Twitter) for search engines and AI crawlers  

## TikTok Support (Separate Plugin)
Looking to embed TikTok videos and galleries on your site? Check out our sister plugin: **[Easy TikTok Feed](https://wordpress.org/plugins/easy-tiktok-feed/)** the easiest way to display TikTok content on WordPress.  

---

## Embedding Options
- Gutenberg blocks
- Shortcodes  
- WordPress widget  
- Compatible with major page builders (Elementor, Divi, WPBakery, etc.)

---

## Compatibility
- GDPR compliant, only publicly authorized data is displayed  
- Compatible with all major themes  
- Multilingual support  
- Priority support for Pro users

### GDPR & cookie consent compatibility

Easy Social Feed includes a global GDPR mode that works automatically with the most popular **WordPress cookie consent and GDPR banner plugins**. When a supported cookie plugin is active, the feed will respect your visitors’ consent before loading Facebook or Instagram media, helping you stay compliant with privacy regulations.

Out of the box, the plugin integrates seamlessly with these top cookie / GDPR solutions:

- Real Cookie Banner by devowl.io  
- GDPR Cookie Compliance by Moove Agency  
- Cookie Notice by dFactory  
- GDPR Cookie Consent by WebToffee  
- CookieYes | GDPR Cookie Consent by CookieYes  
- Cookiebot by Cybot A/S  
- Complianz by Really Simple Plugins  
- Borlabs Cookie by Borlabs  
- WPConsent by the WPConsent team  

Whether you search for an **“Instagram GDPR feed”**, **“Facebook GDPR feed”**, or **“cookie consent friendly social feed plugin”**, Easy Social Feed is built to plug into your existing consent setup instead of replacing it.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`  
2. Activate the plugin via the WordPress Plugins page  
3. Go to Easy Social Feed > Facebook / Instagram / YouTube / X-Twitter to connect your account  
4. Copy the generated shortcode and paste into posts, pages, CPT or anywhere in PHP templates

---

== Frequently Asked Questions ==

= How do I connect my Facebook account to the plugin? =
Navigate to Easy Social Feed > Facebook in your WordPress dashboard. Click on "Connect My Facebook Account" button. A modal will appear explaining the required permissions. Click "Connect to Facebook" and follow the authorization process. Make sure to select your Business Manager and grant all requested permissions for the plugin to work properly.

= How do I connect my Instagram account? =
Go to Easy Social Feed > Instagram in your WordPress dashboard. Click "Connect My Instagram Account" and choose between two connection types:
- **Business Basic**: For simple Instagram feeds from professional accounts
- **Business Advanced**: For advanced features like hashtag feeds, mentions, and multiple account management

Follow the connection wizard to complete the setup.

= What's the difference between Instagram Business Basic and Business Advanced? =
**Business Basic** is perfect for displaying your Instagram posts and stories with basic permissions. **Business Advanced** requires connecting your Instagram account to a Facebook Page and provides access to hashtag feeds, mentions feeds, multiple accounts, and advanced insights. Choose based on your needs.

= Why is my feed not displaying or showing "No posts available"? =
This usually happens when:
- Your access token has expired. Reconnect your account from the plugin settings.
- Required permissions were not granted during connection. Reconnect and ensure all permissions are enabled.
- Your Instagram account is not a Professional (Business or Creator) account for Business connections.
- Cache needs to be cleared. Go to plugin settings and clear the cache.

= How do I display the feed on my website? =
After connecting your account:
1. Go to the "Use (Display)" tab in the plugin settings
2. Use the shortcode generator to create your custom shortcode
3. Copy the generated shortcode
4. Paste it into any page, post, or widget area
You can also use the dedicated widget from Appearance > Widgets or use WordPress blocks.

= Can I customize the look and feel of my feed? =
Yes! The plugin includes a powerful real-time customizer. Navigate to the "Customize" or "Skins" section where you can:
- Change colors, fonts, and spacing
- Adjust number of columns and layout
- Enable/disable specific elements
- Create multiple skins for different pages
All changes are previewed in real-time using WordPress Customizer.

= How do I display multiple feeds on my site? =
Simply generate different shortcodes for each feed you want to display. You can:
- Use different Instagram accounts
- Display different Facebook pages
- Apply different skins/layouts
- Place feeds on multiple pages
There's no limitation on the number of feeds you can create.

= Why do I need to connect my Instagram to a Facebook Page? =
For Business Advanced connections, Facebook requires Instagram Business accounts to be connected to a Facebook Page. This is a Meta/Facebook requirement, not a plugin limitation. This connection enables advanced features like hashtag feeds and better API access.

= How often does the feed update? =
The plugin uses smart caching to optimize performance. You can configure the cache duration in the settings:
- Minimum recommended: 6 hours
- Default: 12-24 hours
- You can manually clear cache anytime from the settings
This helps reduce API calls and improves your site's loading speed.

= Can I display feeds from accounts I don't own? =
- No only feeds from accounts you own and have connected

= What permissions does the plugin need and why? =
**Facebook Permissions:**
- pages_read_engagement: To read posts and content
- pages_read_user_content: To display your page content
- business_management: To access Business Manager accounts
- pages_show_list: To list available pages

**Instagram Permissions:**
- instagram_business_basic: Basic profile and posts access
- instagram_basic: Profile information
- instagram_manage_insights: Account metrics and statistics
- pages_show_list: To list connected Instagram accounts

These permissions are read-only and don't allow the plugin to post or modify your content.

= The feed is loading slowly. How can I fix this? =
1. Enable caching in the plugin settings (recommended: 12-24 hours)
2. Optimize the number of posts loaded initially
3. Use "Load More" button instead of displaying all posts at once
4. Ensure your hosting has good performance

= Can I display Instagram Stories? =
Yes! Instagram Stories are supported. Make sure you're using a Business connection and have the necessary permissions. Stories are automatically included in your feed and will be displayed for 24 hours as per Instagram's policy.

= How do I display Instagram Hashtag or Mentions feeds? =
Hashtag and Mentions feeds require the Business Advanced connection. After connecting:
1. Go to the Moderate or Feeds section
2. Select "Hashtag" or "Mentions" as the feed type
3. Enter your hashtag or mentions
4. Generate and use the shortcode

= Is the plugin GDPR compliant? =
Yes, the plugin is GDPR compliant. It only fetches public data that you've authorized. No personal data from your site visitors is collected or sent to third parties. The plugin caches content on your server to minimize external API calls.

= Does the plugin work with page builders? =
Yes! The plugin works with all major page builders including:
- Gutenberg (WordPress Block Editor)
- Elementor
- WPBakery
- Divi
- Beaver Builder
Simply paste the shortcode in a text/shortcode widget or use the dedicated blocks if available.

= Why am I getting "API Rate Limit" errors? =
API rate limits are set by Facebook/Instagram. To minimize this:
- Increase cache duration in settings
- Reduce the frequency of feed updates
- Don't use too many feeds from the same account
- The plugin uses smart caching to help prevent rate limit issues

= How do I display the feed in a popup? =
The plugin includes built-in popup functionality:
- Posts automatically open in an elegant popup when clicked
- Navigate between posts using next/previous arrows
- Pro version includes advanced popup with Instagram-like experience
No additional configuration needed - it works out of the box!

= Can I filter posts by type (photos, videos, etc.)? =
Yes, with the Pro version you can filter Facebook posts by:
- Photos only
- Videos only
- Events only
- Status updates only
Use the shortcode generator to select your preferred post types.

== Screenshots ==
1. Custom Facebook Feed with thumbnail
2. Custom Instagram Feed in Grid layout
3. Responsive Facebook Like Box(page plugin)
4. Custom Facebook feed in advanced PopUp
5. Custom Instagram feed in advanced PopUp
6. Instagram Hashtag feed
7. Custom Facebook Feed in Carousel layout
8. Custom Instagram Feed in Carousel layout
9. Custom Facebook Feed in Masonry layout
10. Custom Instagram Feed in Masonry layout
11. Custom Facebook Feed in Full Width layout
12. Instagram Feed customisation options
13. Facebook Feed customisation options
14. Facebook Feed customisation in real time
15. Instagram Feed customisation in real time
16. Custom Facebook Feed widget
17. Facebook Like Box(page plugin) widget
18. Easy Facebook authentication with few clicks
19. Easy Instagram authentication with personal and business accounts
20. Easy Facebook shortcode generator
21. Easy Instagram shortcode generator
22. Facebook skins/layouts panel
23. Instagram skins/layouts panel

== Changelog ==

= 6.7.8 =
* Fixed: Critical error when editing the Instagram feed widget in Customizer with the modern Instagram module.
* Improved: lightbox controls theme compatibility.
* Improved: Instagram avatar and stories thumbnail sizing with page builders.
* Fixed: Minor issues.

= 6.7.7 =
* Added: Modern Instagram Feed module with a new dashboard (accounts, feeds, live preview), aligned with YouTube and X/Twitter.
* Added: Modern Easy Social Feed main (hub) page and global Settings page for managing modules and plugin-wide options.
* Improved: Legacy Instagram module is now deprecated; users can still switch between modern and legacy while migrating.
* Added: Feed size controls per device for X/Twitter and YouTube feeds.
* Added: Media aspect ratio option for X/Twitter and YouTube feeds to control how post media is framed.
* Fixed: Minor issues in the X/Twitter and YouTube modules.

= 6.7.6 =
* Improved: YouTube channel header banner height increased so the channel artwork looks more prominent in the feed.
* Added: X / Twitter Feed module with README documentation and Translation tab support for Twitter feed labels.
* Fixed: When a connected account assigned to a feed is deleted, the plugin now shows a notice and auto-assigns another available account where possible.
* Added: New first-run onboarding wizard to simplify setup across modules.
* Improved: Connection handoff now redirects users to module pages, with auto-open connect flow for Facebook and Instagram.


= 6.7.5 =
* Added: Feed language setting in General settings so you can choose which language Facebook and Instagram use for their built‑in text (e.g. “X created an event”, “X shared a link”). Default uses your site language; feed cache is cleared when you change the language
* Improved: General settings intro and descriptions for clarity and to cover all modules (Facebook, Instagram, YouTube)
* Added: AI-powered translation autofill on the Translation tab (Pro) to automatically translate and fill feed labels into your selected language, with a one-click reset back to the original English defaults
* Added: YouTube Feed module with a modern dashboard to connect your channel, create feeds and embed them using shortcode
* Added: YouTube feed customization options including layout, header display, per-feed Custom CSS and cache duration controls
* Added: YouTube performance improvements including serving thumbnails locally when possible (channel and video thumbnails)
* Added: YouTube Pro options including Load More and Popup / Lightbox video gallery settings
* Fixed: Facebook and Instagram duplicate issue.

= 6.7.4 =
* Added: General tab under Settings (Easy Social Feed > Settings) with option to preserve or remove all plugin data when the plugin is deleted
* Fixed: Instagram Business connection failing due to deprecated field in the Graph API, replaced with supported fields to restore authentication
* Fixed: Minor issues

= 6.7.3 =
* Added: GDPR option for Facebook and Instagram feeds (Automatic, Always Enabled, or Disabled) to work with popular cookie consent plugins
* Added: Translation tab under Settings to globally customize static frontend text (buttons, labels, messages) for both Facebook and Instagram feeds
* Improved: Frontend string handling with request-level caching for faster translation lookups
* Fixed: Minor issues

= 6.7.2 =
* Fixed: Instagram Hashtag issue
* Fixed: Minor issues
* Added: Custom filter to translate API error messages
* Tested: Upto 6.9

= 6.7.1 =
* Fixed: Media lightbox not remembering customizer settings
* Fixed: Lightbox image size rendering issues
* Fixed: Instagram "Load More" conflict with Moderate tab
* Fixed: Facebook post hashtag display issue
* Added: Filters to customize Facebook and Instagram post date/time display formats
* Improved: Added pre-connection check to ensure Facebook Page is linked to Instagram account before using Business Advanced connection
* Improved: Load more feature to avoid rare duplicate issue

= 6.6.9 =
* Added: New Facebook connection modal that informs users about required permissions and Business Manager settings before connecting their account
* Added: New Instagram two-step connection flow with Business Basic and Business Advanced options, providing clear guidance on permissions and requirements for each connection type
* Improved: Enhanced user experience with detailed permission explanations and helpful links for Instagram account setup and Facebook Page connections
* Updated: Freemius SDK
* Fixed: Minor issues

= 6.6.8 =
* Fixed: Security vulnerability
* Fixed: Warnings in complete detail and minor issues

= 6.6.7 =
* Fixed: $datetime Fatal error

Older changelog entries are available on our website:
https://easysocialfeed.com/changelog

== Upgrade Notice ==

= 6.7.8 =
Update to this version to avoid a fatal error when using the Instagram widget with the modern Instagram module.

