A discount of "40 % off" means nothing if the crossed-out price was never real. This plugin answers a different question:
is this price good compared with what the product usually costs?
Paste an ASIN, an
amazon.de link or an
amzly.de product link, and you get a compact badge with a coloured dot and a plain rating — "Günstiger als sonst", "Normaler Preis", "Derzeit teurer". The rating comes from the price history collected by
amzly.de, not from Amazon's own crossed-out prices.
How it looks
The badge is a neutral pill that sits inside your text without breaking the line height. The signal colour lives in the dot alone, so it never fights your theme:
- Green — very cheap right now, or an all-time low
- Blue — cheaper than usual
- Orange — normal price
- Red — currently pricier, better to wait
- Grey — not enough price history yet
Built to stay out of the way
- Server-side rendering. Your visitors' browsers never contact amzly.de. No consent banner needed for the badges.
- Light and dark, automatically. Follows each visitor's system setting through pure CSS, so it works even on a fully cached page. You can force one mode if your theme needs it.
- Nothing loads on pages without a badge. No CSS, no JavaScript.
- Respects reduced motion. Visitors who ask for less animation never see the pulsing dot.
- Never a broken post. If the API is unreachable, badges keep showing the last known price instead of disappearing.
Where the links go
- The badge, the price alert and the price history link to the product page on amzly.de, which shows the full price history. Always — also when the price inside the badge comes from Amazon.
- The Amazon button links to the product on amazon.de, with your partner tag if you entered one.
- Product names and images link to amzly.de as well. Once you enter your own partner tag, they link to Amazon with your tag instead, so those clicks earn you commission.
With your own Amazon Creators API access, every link to Amazon is the unchanged link Amazon returns, carrying your partner tag. A price column that shows Amazon's price links there too. The plugin never places someone else's affiliate tag into your posts.
Whether a link opens in a new tab or the same one can be set separately for links to
amzly.de and links to Amazon, under
Amzly → Settings → Display.
Prices straight from Amazon (optional)
If you are an Amazon associate with access to the Creators API, you can enter your own credentials and choose where the product data comes from:
- Only amzly.de — the default, no Amazon account needed.
- amzly.de and Amazon combined — price and availability fresh from Amazon, the price rating, the average and the chart from amzly.de. If one source is unreachable, the other carries on.
- Only Amazon — never contacts amzly.de. Badges then show the price without a rating, and there is no chart.
Prices from Amazon are kept for one hour at most and product details for one day, as Amazon's rules require. Your credentials are stored encrypted with the salts from your wp-config.php.
Comparison tables
Comparison tables have their own place:
Amzly → Comparison tables. Create as many as you like, edit them later, and insert them anywhere — with the block
Amzly (“Comparison table”, then pick the table) or with its shortcode
[amzly_tabelle id="123"].
- Rows from the product data — price, price rating, 90-day average, Amazon rating, availability, coupon, bestseller rank and more — plus rows with your own text, such as weight or battery life, and a buy button. Drag them into order, switch single rows off without deleting them.
- Two to six products as columns: an ASIN, an amazon.de, amzly.de or short link — or a link to any other shop. For other shops there is no price data; you enter name, image and values yourself, and the button reads “To the shop”. Mark such a link as an affiliate link and it gets
rel="sponsored"; the plugin never changes it.
- Your own value in any cell replaces the value from the product data — handy for a shorter name or a note like “from 449 €”.
- Highlight one or more products, each in its own colour and with its own label.
- A live preview shows the table exactly as it will appear in the post.
Only published tables appear in posts. Tables that were built directly in the block before version 1.1.4 keep working; the block offers to turn them into a saved table with one click, and they look exactly the same afterwards.
Bestsellers for a search term
With the Creators API set up, the block and the shortcode
[amzly_bestseller] can fill themselves: enter a search term and a category, and the plugin shows the best-selling results — as badges, a list, a comparison table, a comparison or a chart. The Creators API has no bestseller list of its own, so the plugin searches Amazon and sorts the results by Amazon's bestseller rank. The list refreshes every hour.
Found by search engines
Price lists, comparison tables and two-product comparisons carry
ItemList markup as JSON-LD: position, product name, link and image per product. Deliberately
no Product and no prices — price markup in a blog post tells Google the page sells the product, which belongs on a shop page and is reported as an error otherwise. The links in the markup never carry a partner tag or a tracking parameter; visible links with your partner tag keep it and stay marked
rel="sponsored".
Switch it off under
Amzly → Settings → Display if your SEO plugin already outputs
ItemList data for the same page.
Campaign tracking on
amzly.de
Optional and off by default. Switch it on under
Amzly → Settings → Clicks & data, and links to
amzly.de also carry your website and the element that was clicked — badge, name, image, price alert or chart.
amzly.de uses this to show which websites send visitors. Nothing is stored or sent by your site; the parameters only travel in the link a visitor clicks, and links to Amazon never carry them.
Click statistics
Optional and switched on by default: the plugin counts clicks on badges, Amazon buttons, price alerts, product names, images and prices, so you can see what actually gets used.
Amzly → Clicks shows a chart of clicks per day and every single click with product, image, ASIN, the element that was clicked and the post it happened in.
Stored per click are the time, the post, the ASIN and the kind of element — no IP address, no cookie, no user agent, nothing that identifies a visitor. Entries older than a year are deleted automatically, and at most 5,000 individual clicks are kept per day. The column in the post list, the CSV export and the optional report to
amzly.de count clicks on the badge itself only, as before. Switch it off and the front end loads no JavaScript at all.
Behind a CDN or reverse proxy every visitor can arrive with the same IP address, and the abuse limit of 60 clicks per address and minute would apply to the whole site. The plugin does not trust forwarded headers on its own; pass the real address through the filter
amzly_pb_click_client_ip, or raise the limit with
amzly_pb_click_rate_limit.
Ways to insert a badge
- One block named Amzly: pick badge, price history, list, two-product comparison or a saved comparison table in the block settings, with a live preview that checks the product really exists
- Comparison table:
[amzly_tabelle id="123"] — the number is shown in the list under Amzly → Comparison tables
- The shortcode
[amzly asin="B09X7CRKRZ"]
- With the Creators API:
[amzly_bestseller suchbegriff="bluetooth kopfhörer" kategorie="Electronics" anzahl="5" typ="liste"] — typ is liste, tabelle, vergleich, badge or chart
- Shortcode options:
link, theme, size, variant, logo, label, price, delta, pulse, target
- Price list:
[amzly_liste asins="A, B, C" nummern="ja" reihenfolge="bild,name,preis,badge,amazon"] — reihenfolge (or order) sets the order of the columns: bild/image, name, badge, preis/price, amazon. Columns you leave out follow in the default order.
Only
amazon.de
Links to
amazon.com,
amazon.co.uk and other marketplaces are rejected on purpose. The price data is
amazon.de in euros — a badge on a link to another country would claim a price that does not apply there.
Comparison tables also accept links to other shops — as columns without price data, with the values you enter yourself.
- Install the plugin and activate it.
- Optionally open Amzly → Settings in the admin menu to set defaults. The plugin works without any configuration. Amzly → Getting started shows in a few steps how to insert badges, lists and comparison tables.
- Add the block Amzly to a post and pick what to show, or use
[amzly asin="B09X7CRKRZ"].
No account and no API key are required.
1.1.4
New
- Comparison tables get their own menu: Amzly → Comparison tables. Create, edit and reuse as many tables as you like; each has a shortcode
[amzly_tabelle id="…"] and can be picked in the block.
- Products from other shops: any link can be a column. Name, image and values come from you, the button reads “To the shop”, and a switch per product marks the link as an affiliate link.
- Your own value in any cell, replacing the value from the product data.
- Several products can be highlighted, each in its own colour and with its own label.
- Live preview in the table editor.
Changed
- In the block, “Comparison table” now picks a saved table. Tables built directly in the block keep appearing unchanged; a button turns them into a saved table with all rows, values and the recommendation.
- Bestseller tables that fill themselves from a search stay in the block as before.
1.1.3
Changed
- Comparison tables are more compact: less padding and a line height of their own instead of the one from the post text. A row is about a quarter lower.
Fixed
- Themes with their own table styles — Baskerville, for example, or block themes — could override the comparison table: extra padding around every cell, additional borders, and a recommended column striped instead of evenly coloured. The table now keeps its own look in any theme.
- On phones, a long rating such as "Historisches Tief" could stick out of a narrow column. It now hyphenates.
1.1.2
Fixed
- The editor preview of a comparison table with about ten rows or more could fail with "The preview could not be loaded" — on servers that only accept short addresses. The preview now sends its data in the request body instead of the URL. Posts on the front end were never affected.
1.1.1
New
- Optional campaign tracking on amzly.de, off by default: links to amzly.de carry your website and the clicked element, so amzly.de can show which websites send visitors. Links to Amazon never carry it.
- Separate setting for how links to Amazon open — new tab or same tab — independent of links to amzly.de.
Changed
- The badge always links to amzly.de — also when it shows a price from Amazon, and also for products amzly.de has not delivered data for (via the amzly.de search, which forwards a known ASIN to its product page).
- Product names and images link to amzly.de, or to Amazon with your tag once you have entered a partner tag. This applies to the badge, the price list, the comparison and the comparison table.
- The Amazon button is unchanged: it always links to Amazon.
- Links to amzly.de are clean: no more
ref and src parameters. Only campaign tracking, if you switch it on, adds anything.
1.1.0
Own admin menu, click statistics, optional Amazon Creators API.
New
- Own menu Amzly in the admin sidebar with Getting started, Clicks and Settings. The old addresses under Settings redirect there.
- Getting started explains in a few steps how to insert a badge, a price list, a comparison and a comparison table.
- Click overview: clicks per day as a chart, the most clicked products, and every single click with product, image, ASIN, the element that was clicked and the post it happened in — 25 per page.
- Clicks on the Amazon button, the price alert, product names, images, prices and chart links are listed too, as are middle clicks that open a link in a new tab.
- Optional Amazon Creators API: enter your own credentials and choose where the data comes from — only amzly.de, both combined, or only Amazon.
- Bestsellers for a search term, in the block and as
[amzly_bestseller].
- Price list: new “Columns” panel with numbering, images, price column and Amazon button, and the columns can be dragged into any order. Shortcode:
reihenfolge.
- Comparison table: rows and product columns can be dragged into place. Arrow buttons stay for keyboard and touch.
- Pulsing dot, how links open and “Price data by amzly.de” can now be set per block, for every display type.
- New comparison rows: saving on Amazon and bestseller rank.
- Settings → Status shows amzly.de and the Amazon Creators API in two separate tables, each with its own connection test and its own request counter.
- Filters
amzly_pb_click_client_ip and amzly_pb_click_rate_limit for sites behind a CDN or reverse proxy, and amzly_pb_click_log_daily_limit for the daily cap of 5,000 individual clicks.
Changed
- Settings are split into tabs: Appearance, Amazon, Clicks & data, Status.
- In the price list the Amazon button is a column of its own instead of being attached to the badge.
- The column in the post list, the CSV export and the optional report to amzly.de keep counting clicks on the badge itself only.
- The two-product comparison now carries the same
ItemList markup as the list and the table.
Fixed
- Switches that are on by default — logo, rating text, percentage, structured data, attribution, click counting — could not be switched off on the settings page.
- With the data source “Only Amazon” the structured data contained the partner link. It now holds the canonical product address without any parameter; the visible link is unchanged.
- The editor preview of a list logged a PHP warning on every request.
- Uninstalling left the price history table behind.
- The comparison table's help text said up to eight products; the limit is six.
1.0.1
- The plugin now registers a single block, Amzly. Four older blocks from before the first release were still registered in the background; they could no longer be inserted, but the directory listed all five. They are gone.
- Posts that still contain one of the old blocks keep working unchanged. They are shown with the Amzly block when the post is displayed, and open as the Amzly block in the editor. Saving the post converts it for good — nothing is rewritten in the database on its own.
- The settings page now names the block by its actual name, Amzly.
1.0.0
- First release.
- One block for every view: price badge, price history chart, price list, a comparison of two products, and a comparison table with up to six products as columns.
- Reads ASINs, amazon.de links, amzn.to short links and amzly.de product links.
- Five rating levels, three sizes, three colour modes. What the badge shows is yours to compose: price, ninety-day average, discount, coupon, availability, brand, product image and product name.
- The comparison table takes rows from the product data — price, average, coupon, availability, the Amazon star rating and more — and rows you write yourself, in any order. One column can be marked as your recommendation, in ten colours.
- Amazon buttons work with your own partner tag or without one. Without a tag the link simply carries none.
- Rendered on the server with a two-level cache and a background refresh. Nothing is fetched from amzly.de while a visitor is waiting.
- Optional click statistics. Off by default, and without personal data.
- Every view fits on phones and tablets.
- Shortcodes for everything the block can do.
- Fully translatable. Translations are delivered through translate.wordpress.org rather than bundled with the plugin.