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 |
0–6 |
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:
Mieszkanie → mieszkanie, 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.
roomsis an exact match, not a minimum.- An unrecognised
sortvalue 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.