Skip to content

Shortcode and Block Reference

On this page

Shortcode and block reference

The [osfec_offers] shortcode and the Offers block render through exactly the same code, so they accept the same
options and always produce the same markup.

[osfec_offers type="mieszkanie" city="Białystok" limit="12" filters="yes"]

#Attributes

Attribute Values Default What it does
type An offer type slug, e.g. mieszkanie, dom, dzialka empty Only offers of that type
city A city name or its slug, e.g. Białystok or bialystok empty Only offers in that city
transaction sale, rent, purchase, lease empty Only that transaction
agent Esti agent ID (number) or agent name empty Only that agent’s offers
limit A positive integer Offers per page from the settings (12) How many offers to show
sort date, price_asc, price_desc, area_asc, area_desc date Order of the list
filters yes / no no Prints the filter bar above the list
columns 06 0 0 keeps the stacked list; anything else lays the cards out in a grid
more no, yes, or any text no Adds a link to the offer archive under the list. yes prints “View all offers”, any other text becomes the label

Unknown attributes are ignored. There is no pagination on the shortcode or block: it shows limit offers and stops.
Pagination lives on the archive.

#Notes on individual attributes

type takes the slug, not the label. It is the type name with its bracketed variant removed and simplified:
Mieszkaniemieszkanie, Działka (Rolna)dzialka. The Property type dropdown in the filter bar lists the
values your catalogue actually contains.

city accepts either the raw Esti spelling (Białystok) or its slug (bialystok); both resolve to the same
offers. An unknown city matches nothing rather than everything.

agent is matched by ID when it is numeric and by name otherwise. The ID is the stable one — names change.

columns is capped at 6. The grid collapses to two columns below 980px and to one below 600px, so a columns="4"
list is still readable on a phone.

more builds its link from the attributes in play, so a block filtered to Białystok links to the archive already
filtered to Białystok.

#How attributes and visitor filters interact

Attributes are defaults. When the same parameter arrives in the URL — because a visitor used a filter bar, or
followed a pre-filtered link — the URL wins:

[osfec_offers city="Białystok" filters="yes"]

/landing-page/                    → offers in Białystok
/landing-page/?city=suprasl       → offers in Supraśl

This applies to type, city, transaction, agent and sort. limit, columns, filters and more are never
overridden by the URL.

#URL parameters

The archive, and any list rendered with filters="yes", filter through plain GET parameters. Ordinary parameters, on
purpose: results stay linkable, bookmarkable, cacheable and indexable, and the browser’s back button works.

Parameter Values Example
type type slug ?type=dzialka
city city name or slug ?city=bialystok
transaction sale, rent, purchase, lease ?transaction=sale
agent agent ID or name ?agent=42
price_min / price_max number ?price_min=200000&price_max=500000
area_min / area_max number ?area_min=40
rooms number (exact match) ?rooms=3
sort date, price_asc, price_desc, area_asc, area_desc ?sort=price_asc

Combine them freely; every criterion must match:

/offers/?type=mieszkanie&city=bialystok&price_max=600000&sort=price_asc

Rules worth knowing:

  • Anything not on this list is ignored.
  • Numbers tolerate spaces and a comma as the decimal separator, and are read as positive values.
  • rooms is an exact match, not a minimum.
  • An unrecognised sort value falls back to newest first.
  • A parameter whose control is hidden in Settings → Archive filters still works in the URL. Hiding a control does
    not disable the filter.
  • Whether a hidden filter shows up in the form of a shortcode-rendered filter bar depends on the same setting, so a link
    is the way to apply it.

#Where the values come from

Type and city values are data from Esti, not interface text, so they stay in the original language — usually Polish.
The dropdowns in the filter bar are the authoritative list of what your catalogue contains; they are rebuilt from the
imported offers and refreshed within six hours of a change.