York IE Content Sync for ACF, Elementor, and WPBakery

Description

York IE Content Sync copies a single post, page, or custom post type from the site you are editing (staging) to another WordPress site you control (live).

Both sites need this plugin active. On staging, a Sync link is added to each row in the posts list. Confirming the sync sends that item to the live site.

ACF, Elementor, and WPBakery are optional. You choose one page builder mode in settings (or ACF blocks only). The plugin does not require those plugins to be installed; when one is active and selected, sync includes its data.

What is copied:

  • Title, content, excerpt, status, slug, and dates
  • Custom post meta
  • ACF field values and ACF blocks
  • Elementor data, when Elementor is the selected page builder
  • WPBakery content and referenced images, when WPBakery is the selected page builder
  • Taxonomy terms
  • Featured image and other media referenced by the content
  • Selected theme and plugin files, when file sync is enabled

The live site address, API keys, page builder, and an optional SFTP fallback are set under STLS Sync.

File and theme sync to the live site requires a configured Live API Key on both sites; sync REST endpoints reject requests when no key is saved.

API keys and the SFTP password are encrypted before they are stored in the database.

External services

This plugin does not call a hosted service of its own. It only talks to servers you configure:

  • Live site. Staging sends the item being synced (content, meta, media, and any files you chose) over HTTPS to the live site URL in the plugin settings. The live site must have this plugin active. Requests are authenticated with the API key you generate.
  • SFTP fallback (optional). If a file cannot be written over HTTP, the plugin can upload it to the SFTP host, port, username, and password you enter under Settings. Those credentials are stored encrypted on your site and are sent only to that host.

SSL certificate verification is enabled for remote sync requests. It is skipped only when the target URL points at a local development host, when the site environment is local or development (and no remote URL is set), when the STLS_DISABLE_SSL_VERIFY constant is set, or when the stls_remote_request_sslverify filter allows it.

Diagnostic messages are written to the PHP error log only when WP_DEBUG is true.

Screenshots

Installation

  1. Upload the york-ie-content-sync-acf-elementor-wpbakery folder to /wp-content/plugins/, or install the zip from the Plugins screen.
  2. Activate the plugin on both the staging site and the live site through the Plugins menu.
  3. On each site, open STLS Sync and set the staging URL, the live URL, and the same live API key.
  4. Choose the page builder in use (ACF blocks, Elementor, or WPBakery) and save.

FAQ

Do both sites need the plugin?

Yes. Staging sends the content, and the live site receives it through this plugin’s REST endpoints.

Do I need ACF, Elementor, or WPBakery installed?

No. Those integrations are optional. Pick the builder mode that matches your site under STLS Sync. Basic post, meta, media, and taxonomy sync works without any of them.

What permission is required to sync?

The settings screen and file sync require manage_options. Post sync from the posts list requires edit_post on that item; administrators can sync any post, and other users can sync only posts they authored.

Where are API keys and the SFTP password stored?

In WordPress options on your own database, encrypted with AES-256-CBC using your site’s authentication keys.

What is removed on uninstall?

Deleting the plugin removes its options, its scheduled log cleanup, and the sync log table. Synced posts and files are left in place.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“York IE Content Sync for ACF, Elementor, and WPBakery” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

2.0.7

  • Security: exact host staging/live detection, SSRF guards on media downloads, encrypted API keys (including staging key), sync capability checks, live post matching by staging ID, safer file writes and path blocks, API key omitted from REST query strings by default, log URL redaction, admin AJAX message escaping, and safer Elementor attachment ID replacement in JSON.

2.0.6

  • WordPress.org review: distinctive plugin display name, redacted file-sync debug URLs, Elementor log AJAX nonces.

2.0.5

  • SFTP: document Plugin Check exception for curl_setopt inside wp_remote_request() http_api_curl configuration.

2.0.4

  • Elementor: restore editor recognition on post edit via admin-ajax (nonce and edit_post capability), without GET side effects.

2.0.3

  • WordPress.org review: SFTP fallback uses wp_remote_request with http_api_curl; removed admin GET Elementor meta fix (sync path only); renamed main plugin class for unique prefix.

2.0.2

  • SFTP (SSH2): upload via SCP and the WordPress Filesystem API instead of direct stream fopen/fwrite.

2.0.1

  • WordPress.org review compliance: text domain and plugin slug, REST permission checks, file path validation, logging redaction, and related hardening.

2.0.0

  • First release of the ACF, Elementor, and WPBakery sync plugin.