=== DWD SocialAutoShare ===
Contributors: dwd
Tags: social, facebook, instagram, sharing
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Stable tag: 1.5.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Automatically share WordPress posts to a Facebook Page feed and optionally publish Instagram Business feed posts via the Meta Graph API.

== Description ==

DWD SocialAutoShare shares new posts to a connected Facebook Page’s feed. Optionally, it can publish a single-image Instagram Business feed post using the featured image and a caption template.

== Installation ==

1. Upload the plugin ZIP in WordPress under Plugins → Add New → Upload Plugin.
2. Activate the plugin.
3. Open DWD SocialAutoShare → Facebook & Instagram to connect Meta and configure sharing.

== Changelog ==

= 1.5.4 =
* Multisite: network activation/deactivation, new-site bootstrap, deactivation cron cleanup, per-site uninstall.

= 1.5.3 =
* Security: ignore unsigned heartbeat site_token.

= 1.5.2 =
* Performance: never sleep on shutdown when DISABLE_WP_CRON � schedule share via WP-Cron only.

= 1.5.1 =
* Security: ignore unsigned remote wipe banned/blocked; wipe only via verified signed commands.

= 1.5.0 =
* Added: Share_Sync public API for integrators (share_post, update_shared_post, get_share_state).
* Added: Facebook Page post message updates and Instagram comment updates on shared posts.
* Added: Stores Instagram media ID and last social update post meta.

= 1.4.11 =
* UI: Facebook and Instagram test post buttons in the Meta connection sidebar.

= 1.4.10 =
* Fix: OAuth popup success screen closes and refreshes the main dashboard (not the popup).

= 1.4.9 =
* UI: Meta connection block in a sticky top-right dashboard sidebar.

= 1.4.8 =
* Fix: Facebook Connect popup blank page (GET OAuth URL, client redirect fallback, display=popup).
* UI: Meta Connect / Disconnect in a right-hand column.

= 1.4.7 =
* Fix: Facebook OAuth connect redirect, popup UX, visible OAuth errors, and state persistence on object-cache hosts.

= 1.4.4 =
* Fix: Facebook backdated feed posts send Meta’s `min` granularity (not invalid `minute`), fixing error #100 when “Use WordPress post date” is enabled.

= 1.4.3 =
* Fix: Dashboard **Update** (migrations / page sync) works for DWD Plugins hub administrators, not only `manage_options`.

= 1.4.2 =
* Fix: **DWD Plugins** fly-out shows SocialAutoShare again for hub administrators (`manage_dwd_plugins_hub`).

= 1.4.1 =
* Fix: admin access under **DWD Plugins** when the hub rewrites fly-out capabilities (restores access for users with `manage_options`).

= 1.4.0 =
* Facebook: second share style **Full story + photos** — full plain-text body (`{content}` placeholder), uploads featured/attached/inline images; no article link-preview card.
* Facebook: optional **donation link** (plain text, no Graph link card). Native posts: toggle in SocialAutoShare settings. **RSSAgg** imports: per-campaign checkbox on Edit campaign (`append_donation_link`).

= 1.3.3 =
* Facebook: optional **backdated** Page feed posts using the WordPress post’s GMT date (on by default for existing installs without the setting; turn off under Facebook Page if you prefer “now”). Filter `autosocialshare_fb_backdated_unix` to override. Template placeholders **{post_date}** (site date format) on Facebook and Instagram captions.
* Reliability: short **process lock** per post plus treating **stored Graph post id** as already shared, so overlapping cron or cache replay is less likely to enqueue a second Facebook share.

= 1.3.2 =
* Auto-share queue: ignore duplicate **transition to publish** for the same post in one request after a share is already scheduled (or already on the cron queue), so importers that touch a post multiple times before publish are less likely to enqueue multiple Facebook/Instagram jobs.

= 1.3.1 =
* Packaging/update: plugin directory renamed to dwd-socialautoshare; build script now outputs dwd-socialautoshare-<version>.zip and dwd-socialautoshare.zip.

= 1.3.0 =
* Admin: **DWD Plugins** menu; **SocialAutoShare** submenu; single settings page with collapsible sections; legacy URLs redirect with anchors.

= 1.2.5 =
* Configurable delay before Facebook/Instagram auto-share after publish; rescrape retries with logging.

= 1.2.4 =
* Facebook link previews: rescrape the post URL before sharing to reduce missing preview images; added a toggle to disable if needed.
* Rebrand: plugin name in WordPress/admin is now “DWD SocialAutoShare”.


