About this plugin
” is the question that stops a poster sale. com answers it on the
product page: shoppers photograph their own wall with the phone already in their hand and see your
print on it at true physical size — 30×40 looks like 30×40, next to their actual sofa, in their
actual light. No app, no shopper account, no AR-capable phone. Add the button once and it appears
on every poster you sell, now and in the future.
What shoppers get
- True scale, not a mockup. The wall is measured once, then the poster is drawn at its real
size with perspective correction — comparing 50×70 against 70×100 is a click, not a guess.
- Their wall, or a room scene. Take a photo, upload one, or skip the photo and pick a stock
room. Whichever is faster for them.
- Every device, every browser. Desktop, older phones, and in-app browsers like Instagram and
Facebook. Start on desktop, scan a QR code, finish on the phone — the preview follows.
- Their own language — fourteen of them. English, German, Polish, Spanish, French, Italian,
Portuguese, Dutch, Swedish, Norwegian Bokmål, Danish, Finnish, Czech and Slovak. The preview
follows the language your store page is already in, with nothing to configure.
- Frames, mats and sizes. Frame widths and colours, a passe-partout, and every size you sell.
- Gallery walls, if you want them. Turn them on, on the Settings tab, and shoppers hang
several posters side by side on one wall: up to 2, 3, 5 or 8, by plan. They add more of your
products from the More artworks tab of the preview. Off by default, and a single product can be
kept on its own.
- One wall, the whole catalogue. Once a shopper has set up their wall, a small icon on every
other product card — in related products, on category pages, in search results — opens that
print on the same wall in one tap. No second photo, no second setup. )
- A preview worth sharing. Shoppers download the image or send a link to the person whose
opinion decides the purchase — and that link leads back to your product page.
What you get
- Set up in four steps. After you connect, setup checks your products, shows the button on a
product page of your store while you choose its position and look, lets you turn on gallery
walls and order analytics, and publishes when you are ready. Nothing goes live before that.
- Little per-product setup. Switch the button on for the products you want, alone or in bulk.
It reads the size from the size attribute of a variation or the size field on the product page.
No theme surgery, no shortcode per item.
- Placement and styling you control. Nine positions on the product template, or the
[seeonwall_button] shortcode. Label, colour and shape are settings, with a label field for
each of the fourteen shopper languages.
- Add to cart from the preview, or not. The preview adds the size on the wall to the cart. Turn
this off on the Button tab, and the preview sends shoppers to the product page with that size
selected.
- Analytics on every plan, Free included. Sessions, views, shares and downloads, plus a
per-poster breakdown: how many shoppers opened each artwork, and how many got it onto a wall.
- Order analytics, if you want them. Turn them on, on the Analytics tab, to see how often a poster that shoppers saw
on their wall is added to the cart, ordered and refunded, next to the shoppers who skipped the
preview. Off by default, and only shoppers who agree to statistics are counted.
- A storefront that stays fast. One small deferred script that never blocks your page,
EU-hosted, and wall photos delete themselves after seven days. No tracking cookies: order
analytics, if you turn them on, add one session cookie, only for shoppers who agree to statistics.
0+) installed and active. Connecting takes one click — no signup, no
API key: the plugin proves it controls your domain and a free account is provisioned.
External service: seeonwall.com
com) that renders
the wall previews. The plugin does not visualize anything itself and is not usable without that
service, which is operated by the plugin author.
What the plugin sends: on connect, once, when you click Connect — your store’s URL and the
connecting admin’s email address, in exchange for a store token; the email is used only for
account notices and billing, never shown to shoppers or used for marketing. On product pages
js
(loaded, not bundled, because the preview is a live service kept current server-side) and passed
the product’s image URL and physical dimensions. When you run Auto setup on the
Products page — the title and the image URLs (at most 10) of each product it analyses; the service
fetches those images and has an AI model in the EU find the artwork in them. When you run Read sizes from product text on the
Products page — the title, the categories, the descriptions and the attributes of each product
without a size, and of each product sized by its variations when you select that; an AI model in the EU reads the sizes in
that text. If you turn on order
analytics (off by default), and only for shoppers who agree to statistics through the WP Consent
API — each add-to-cart, paid order and refund of a poster that shows the button, as the poster image
URL, the quantity and the step the shopper reached in the preview, with the order and refund
numbers, which the service keeps only as a one-way code for 30 days. No name, email address,
postal address or price. For those shoppers, the store also keeps the preview step of each poster
in the cart in the session cookie seeonwall_labels, which the browser deletes when it closes. Apart from that, the plugin sends no shopper data.
What the service does with shopper data, once a shopper opens the preview: a room-scene
template uploads nothing at all. A photo of the shopper’s own wall is stored in the EU
and analysed by an AI model in the EU to detect the wall corners; it stays in the EU for its whole lifetime, is never used to train
models, and is deleted when the session expires after 7 days. Shoppers never create an account,
a bot check guards uploads, and a notice stating all of this is shown in
the viewer before the shopper uploads. Your WordPress admin also carries this text, ready to copy
into your own policy, under Settings → Privacy.
com/privacy ·
com/subprocessors
Reporting illegal content
com that is unlawful — a poster image used without the rights holder’s
com. The Article 16 EU Digital Services Act
com/report
Source Code
The admin settings page is a small React + TypeScript app. The plugin ships its compiled, minified
css ); the human-readable source is under
md. js + Vite ( npm install && npm run
build ). React and ReactDOM resolve at runtime to the copies WordPress ships.
Translations
Shoppers get fourteen languages. The wall preview and the “See on wall” button speak English,
German, Polish, Spanish, French, Italian, Portuguese, Dutch, Swedish, Norwegian Bokmål,
Danish, Finnish, Czech and Slovak, following the language your store page is in — no setting to change, and no
per-language setup on a multilingual store.
The settings screen ships six translations beyond English — German, Polish, Spanish, French,
Italian and Portuguese — for the PHP strings and the React settings screen, following your
WordPress admin language including variants such as de_AT, es_MX, fr_CA, pt_BR and pt_AO.
Portuguese is European Portuguese, with Brazilian and Angolan locales resolving to it rather than
to English. org translations take precedence.