WP Manifestindependent plugin directory

Install

Download easybroker-sync.zip From the v0.6.0 release on GitHub, Jul 9, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/shauncuier/easybroker-sync/releases/download/v0.6.0/easybroker-sync.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

EasyBroker Sync for WordPress

Cross-post WordPress property listings to EasyBroker and pull your own listings back into WordPress for display.

✨ Features

  • Push to EasyBroker — Publish or update a WordPress property and it's automatically synced to EasyBroker (and its connected portals).
  • Pull from EasyBroker — Import your own EasyBroker listings into a dedicated eb_property post type with full detail (images, pricing, location, etc.).
  • Custom Post Type — eb_property with Operation, Property Type, and Location taxonomies.
  • Shortcode — [eb_properties] to display listings anywhere (filterable by limit, operation, type, collaboration).
  • Bundled Templates — Archive and single-property templates included; your theme can override them.
  • Admin Settings — API key + test connection, currency, agent, image handling, sync frequency, manual sync, and a sync log.
  • WP-Cron Scheduling — Automatic sync on a configurable schedule.
  • Security Hardened — SSRF protection on image ingestion, rate-limit handling, pre-flight validation, and more.

📥 Installation

From GitHub Releases (recommended)

  1. Go to the Releases page.
  2. Download the latest easybroker-sync.zip.
  3. In WordPress, go to Plugins → Add New → Upload Plugin.
  4. Choose the downloaded .zip file and click Install Now.
  5. Activate the plugin.

Manual

  1. Clone or download this repository.
  2. Copy the easybroker-sync folder into wp-content/plugins/.
  3. Activate EasyBroker Sync in the Plugins admin page.

⚙️ Configuration

  1. Go to Properties → EasyBroker Sync in the WordPress admin.
  2. Enter your EasyBroker API key and click Test connection.
    • Alternatively, define EBS_API_KEY in wp-config.php (recommended for production):
      define( 'EBS_API_KEY', 'your-api-key-here' );
  3. Configure currency, image handling, and sync frequency, then Save.

📋 Requirements

  • WordPress 6.0+
  • PHP 7.4+
  • An EasyBroker account with API access

📝 Changelog

0.6.0

  • Last-resort property-type inference from title keywords (Spanish + English) for Houzez listings with no type term — "TERRENO…" → Lot, "CASA…" → House, "…APARTMENT" → Apartment, etc. Disable via the ebs_houzez_infer_type_from_title filter; customize patterns via ebs_houzez_title_type_patterns
  • Per-m² price support — a Houzez price prefix/postfix containing "m²"/"per meter"/"por metro" now pushes the EasyBroker operation with unit square_meter instead of total
  • Manual matching UI — the property-type override is now a dropdown of your EasyBroker account's actual types (with a live "Auto currently matches: …" hint), and a "Match EasyBroker listing" picker lets you link a WordPress property to an existing EasyBroker listing by clicking it (filter by title or EB id)
  • Empty property-type/status enum lists are no longer cached for a day (API glitch or missing key would pin the UI to fallback mode)

0.5.0

  • Spanish property type aliases (casa, departamento, terreno, etc.) for Houzez mapping, with auto-alignment to canonical spellings
  • Inline display of up to 10 validation/sync errors directly in the WordPress admin panel for bulk pushes
  • Auto-recreation of EasyBroker properties on update when the remote listing has been deleted (HTTP 404)
  • Negative caching transient for failed location lookups to avoid redundant API hits
  • Robust API diagnostics including HTTP status in error logs, recursive array stringification to prevent imploding fatals, and raw response parsing for non-JSON content
  • Restrict bulk sync AJAX to only pull 'pending' status records, avoiding retrying failed posts repeatedly in the same run
  • Display post title alongside ID in the sync log

0.4.0

  • Houzez theme integration
  • Push existing Houzez properties (post type property, fave_* fields) to EasyBroker
  • Bulk “Sync all Houzez properties” with a title-matching link pass that updates existing EasyBroker listings instead of creating duplicates
  • EasyBroker imports now create native Houzez properties (theme UI) when Houzez is active — configurable via the “Import listings as” setting
  • EasyBroker Sync box on Houzez properties: status, Push now, location lookup, type/currency/agent overrides
  • EasyBroker status column in the Houzez property list table
  • Houzez location auto-resolution via the EasyBroker /locations endpoint

0.3.0

  • Added: concurrency locks — pull and push never overlap (fixes cron vs. manual button race)
  • Added: push time budget so push never hits max_execution_time
  • Fixed: PHP 8 safety — sanitize_amount() and numeric attributes no longer fatal on malformed values
  • Added: ISO-4217 currency sanitizer (3 uppercase letters); used in admin settings and field map
  • Security: meta-box save rejects non-scalar POST values; API import skips non-scalar values
  • Fixed: SSRF check handles IPv6 bracket notation correctly
  • Improved: partial pagination errors are logged; AJAX shows "already running" message
  • Added: Update URI: false header to prevent accidental wordpress.org updates
  • Cleanup: uninstall removes lock options
  • Dev: new tests for sanitize_amount, sanitize_currency, and non-numeric legacy meta

0.2.0

  • Security & hardening pass
  • Fixed: images no longer re-sent on update (no more duplicates)
  • Fixed: agent sent as account email, not agent_id
  • Added: pre-flight validation, SSRF protection, HTTP 429 handling
  • Added: per-property "Push to EasyBroker now" button
  • Dev: PHPCS config, Composer dev deps, PHPUnit tests

0.1.0

  • Initial release: push, pull, CPT, shortcode, templates, admin, scheduler

📄 License

GPL-2.0-or-later — see LICENSE.

Releases

5 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v0.6.0 latest
Jul 9, 2026 3mo ago
easybroker-sync.zip
4
Jul 4, 2026 3mo ago
easybroker-sync.zip
2
Jul 3, 2026 3mo ago
easybroker-sync.zip
1
Jul 1, 2026 3mo ago
easybroker-sync.zip
1
Jul 1, 2026 3mo ago
easybroker-sync.zip
0
A grade

Security

EasyBroker Sync 0.6.0 · audited by WP Registry

No security issues found.

Audited release
0.6.0
Findings
none
Worst severity
—
Content hash
a89a41a09243d5ad5223f9bf…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.