erphome.pl — Widget Rezerwacji Apartamentu

Plugin Banner

erphome.pl — Widget Rezerwacji Apartamentu

by erphome

Download
Description

Guests who found your apartment on Booking.com or Airbnb will happily book
with you directly, if you make it as easy as the portal does. That means a
calendar they can see, dates they can pick, and a button that starts the
booking. Not a phone number and a hope.

This plugin puts exactly that on your WordPress site: the same availability
calendar and booking button your guests already see on your erphome.pl
reservation page. Same apartment, same free dates, same prices, no
commission taken out of the booking.

You need an erphome.pl account

This plugin is a bridge, not a booking system on its own. It displays a
widget from an existing account on erphome.pl, a
commission-free booking platform for apartment and vacation rental owners.
If you do not have an account yet, the plugin will show an empty settings
page and nothing else.

What lives in erphome.pl (not in WordPress): apartment details and prices,
reservations, guest messages, payments, and calendar sync with the portals.

What the plugin adds to WordPress

  • Shortcode [erphome_widget], which works anywhere shortcodes do:
    posts, pages, text widgets, most page builders.
  • Block “ErpHome — Booking Widget”, with a live preview right in the
    editor and sidebar controls for apartment, language and size.
  • Classic sidebar widget for themes built around the Widgets screen.
  • Settings page (Settings ErpHome) where you paste the link copied
    from your erphome.pl panel. The account and apartment slugs are read out
    of it automatically, so nobody has to explain what a “slug” is. Accounts
    with several apartments get a real dropdown, read from the account.

Fits the page instead of sitting in a box

The widget reports how tall it actually is, and the plugin sizes the frame to
match. No empty space underneath, and nothing cut off when the widget sits in
a narrow column or on a phone. Turn it off in Settings ErpHome if you would
rather pin a fixed height.

Tells search engines what your page is about

The widget is an iframe, and search engines do not read inside one. So a page
with only a widget on it says nothing about your apartment: no photos, no
rooms, no ratings, nothing for Google or an AI assistant to quote.

Switch on “Add apartment structured data” and the plugin publishes a
schema.org VacationRental block on your page, built from your erphome.pl
listing: photos, size, bedrooms and beds, amenities, check-in and check-out
times, guest ratings and reviews, and your FAQ. It describes your page and
links back to your erphome.pl listing as the same place, so the two do not
compete.

It runs only on single posts and pages, and only where the widget is in the
content, never from a sidebar. It is off by default, so it can never surprise
an SEO plugin that already publishes this data.

Measurable

When a guest picks their dates and hits the booking button, the plugin pushes
an erphome_booking_start event into dataLayer, with the dates, number of
nights and guest count. Pick it up in Google Tag Manager or GA4 and you will
see how many visitors actually start a booking, not just how many loaded the
page.

Speaks your visitors’ language

The widget follows the language of your WordPress site, so an English site
gets an English widget and a Polish site gets a Polish one. Polish and
English are both built in.

Running a bilingual site? Set the language per embed:

[erphome_widget lang="en"]

The same control sits in the block sidebar and in the classic widget. The
apartment’s own content (title, description) follows whichever languages you
enabled for it in the erphome.pl panel, so an owner who translated the
listing gets translated content here too.

Your calendars stay in one place

If your erphome.pl account syncs availability from Airbnb or Booking.com
over iCal, the widget shows that same combined, up-to-date availability.
Sync is configured once, in erphome.pl, and nothing about it needs repeating
in WordPress.

Several apartments?

The apt attribute embeds a different apartment than the default one from
Settings ErpHome, so each apartment can have its own page:

[erphome_widget apt="dom-nad-morzem"]

Available on the block and the sidebar widget too.

Why a plugin instead of pasting a script

The erphome.pl panel also gives you a <script> snippet for any website.
On WordPress that snippet has a habit of disappearing: the block editor
strips <script> from HTML blocks in some setups, caching and minification
plugins defer external scripts until the widget arrives late or not at all,
and security plugins block third-party scripts inside post content.

This plugin renders a plain <iframe> server-side instead. It has a known
width and height before the page paints, so nothing jumps around while
loading, and there is no external JavaScript for another plugin to break.

External services

Everything below talks to one service: erphome.pl, specifically your
account’s subdomain your-name.erphome.pl, operated by ERP HOME Sp. z o.o.
The plugin contacts nothing else.

There are two separate connections, and they are worth telling apart.

1. The visitor’s browser loads the widget (always).
The widget is an <iframe> pointing at erphome.pl. On every page where you
embed it (shortcode, block, or sidebar widget), each visitor’s browser
connects directly to erphome.pl to fetch the current availability calendar.
The address carries your account slug, optionally the apartment slug, and a
two-letter language code taken from your site’s language setting (for example
?widget=1&lang=en). The plugin adds no visitor data to it.

If you switch on height fitting, the widget and the page also exchange
postMessage calls: the widget sends its content height and, when a guest
presses the booking button, the dates, night count and guest count they chose.
That data stays in the visitor’s browser. The plugin puts the booking-button
event into dataLayer, where your own analytics tools (if you use any) can
read it. Nothing is sent anywhere by the plugin itself.

2. Your server asks erphome.pl for your listing (only for two features).
When you use the apartment dropdown, or switch on structured data, your
WordPress server calls the public erphome.pl API over HTTPS
(?api=apartments and ?api=1) to read your own listing: title,
description, photos, amenities, ratings and so on. This is a plain GET with
no authentication, it sends nothing about your visitors, and the answer is
cached for six hours. The same data is already public on your erphome.pl
booking page. Leave both features off and your server never contacts
erphome.pl at all.

erphome.pl’s data-processing terms (including the visitor’s IP address and
browser data, which any HTTP request sends by default):
Privacy policy ·
Polityka prywatności.

  1. Install and activate the plugin.
  2. Go to Settings ErpHome.
  3. Paste the “Widget preview” link copied from your erphome.pl panel
    (Settings Calendars) and save. The account and apartment slug fields
    fill in automatically, and a live preview appears below the form.
  4. Add [erphome_widget] to a post or page, or insert the “ErpHome —
    Booking Widget” block in the editor.
  1. The booking widget on a page, sized to its content, checking availability without leaving the site.

    The booking widget on a page, sized to its content, checking availability without leaving the site.

  2. Settings → ErpHome: paste the link from your erphome.pl panel and the rest fills itself in, including the apartment list.

    Settings → ErpHome: paste the link from your erphome.pl panel and the rest fills itself in, including the apartment list.

  3. The "ErpHome — Booking Widget" block in the editor, with a live preview and sidebar controls.

    The "ErpHome — Booking Widget" block in the editor, with a live preview and sidebar controls.

  4. The same widget in English and in Polish, set per embed with the lang attribute.

    The same widget in English and in Polish, set per embed with the lang attribute.

Do I need an erphome.pl account?

Yes. The plugin displays the widget from an existing account. It does not
create one, and it does not replace the erphome.pl panel.

Is the widget available in English?

Yes. The widget follows your WordPress site language, with Polish and
English built in, and the lang attribute overrides it per embed. The
erphome.pl panel and the full reservation page are available in English as
well.

Does this work with my Airbnb or Booking.com calendar?

Yes, if your erphome.pl account already syncs availability from those
platforms over iCal. The widget always shows the same availability as your
erphome.pl booking page.

Does it slow down my site?

No. The widget loads in a separate <iframe> with loading="lazy", so it
does not block the rest of the page from rendering, and it adds no
JavaScript or CSS to your theme.

Where does the booking actually happen?

In the widget the guest picks dates and guest count and gets an instant
answer on whether the dates are free. The button then opens your full
erphome.pl reservation page in a new tab, with those choices already filled
in. The booking form, payments and confirmation stay outside the iframe,
which is what keeps payment gateways and sessions working reliably.

I have several apartments. Can I embed more than one?

Yes. Use the apt attribute on the shortcode, block or widget to pick a
different apartment than the plugin default on each page.

Where do I find the link to paste into Settings ErpHome?

In the erphome.pl panel: Settings Calendars, section “Widget rezerwacji na
Twoją stronę”. Pasting the whole snippet works as well as pasting just the
link.

Can I change the size of the widget?

Width, yes: in Settings ErpHome for the default, or per embed with the
width attribute. Height is normally handled for you, because the widget
reports how tall it is. If you switch that off, height applies as a fixed
value:
[erphome_widget width=”360″ height=”450″]

Will the structured data clash with Yoast or Rank Math?

It should not. The plugin publishes one extra VacationRental block; SEO
plugins publish their own page and site markup and the two describe different
things. If your SEO plugin already publishes apartment or lodging data, leave
this option off rather than having two sources say the same thing.

Does the plugin slow my site down by calling erphome.pl?

The dropdown and the structured data read your listing from erphome.pl and
cache it for six hours, so it is roughly four requests a day, from your server,
not from your visitors. A failed call is cached briefly too, so a temporary
outage cannot make every page wait. With both features off, your server never
calls erphome.pl.

How do I track bookings started from my site?

Switch on height fitting and the plugin pushes an erphome_booking_start
event to dataLayer when a guest presses the booking button, carrying
erphome_apartment, erphome_check_in, erphome_check_out,
erphome_nights and erphome_guests. Add a Google Tag Manager trigger on
that event name.

1.2.0

  • The widget now sizes itself to its content, so there is no empty space below it and nothing gets cut off in narrow columns.
  • New option: publish schema.org VacationRental structured data for the apartment on your page, built from your erphome.pl listing. Off by default.
  • Accounts with several apartments get a dropdown in the settings and in the block, instead of typing the apartment slug by hand.
  • Pressing the booking button now pushes an erphome_booking_start event to dataLayer for Google Tag Manager and GA4.
  • The block sidebar is now translatable (JavaScript translations were missing until now, so those labels stayed English whatever the site language).
  • The block shows a preview in the inserter.

1.1.0

  • The widget now follows the language of your WordPress site (Polish and English built in).
  • New “Widget language” setting, plus a lang attribute on the shortcode, block and sidebar widget for bilingual sites.
  • Fixed a layout overflow in the embedded widget at widths below roughly 420 px.
  • Fixed the settings page showing every notice twice.
  • Rewritten plugin description, added banner, icon and screenshots.

1.0.0

  • Initial release: shortcode, Gutenberg block, sidebar widget, settings page with automatic link recognition.
Back to top