Custom blocks: every block type explained

11 min read

Social links take a visitor to somebody else’s page. Custom blocks are for the things that are yours: your shop, your booking link, a video, an email address, a product. The Custom blocks panel holds twenty types, each styled independently of the social links settings and each rendering in its own list.

How the panel works #

There is a style section at the top, then the list of blocks you have added, then a grid of buttons — one per block type — for adding more.

Button style #

Two choices, working exactly as the social links one does:

  • Button — vertical, left aligned, icon and text, filled, theme colours, rounded. Sets everything for you.
  • Advanced PRO — the same six groups as the social links panel: layout, alignment, content, design, colours and shape.

Icon size #

Default, Medium, Large or Extra large. It applies to the icon or image of every block below, which is why it sits above the list.

The block list #

Each block is one collapsed row: a drag handle, a position number, the block’s name, and — if it is scheduled — a Scheduled badge. Click the row to open it and edit. The drag handle reorders.

NoteBlocks set to Always show stay on the card for good. Blocks set to Schedule appearance take themselves off and put themselves back. See Scheduling a block.

The twenty block types #

ButtonWhat it doesPlan
Add custom linkA button to any address.Free
Add EmailA button that opens the visitor’s email app.Free
Add YouTubeA video, embedded on the card or linked.Free
Add VimeoA video, embedded on the card or linked.Free
Add SpotifyA track, album, playlist, episode, show or artist.Free
Add CalendlyA booking scheduler, embedded or linked.Free
Add TikTokA creator card or a single video.Free
Add PinterestA profile or a single pin.Free
Add TwitchA channel, embedded or linked.Free
Add dividerA heading with a line each side, for splitting a long card.Free
Add ViberOpens a Viber conversation.PRO
Add WhatsAppOpens a WhatsApp conversation.PRO
Add TelegramOpens a Telegram conversation.PRO
Add SignalOpens a Signal conversation.PRO
Add iMessageOpens Messages on Apple devices.PRO
Add SMSOpens the phone’s text message composer.PRO
Add ShortcodeRuns any shortcode from your site inside the card.PRO
Add contact cardA Save contact button placed anywhere on the card.PRO
Add WooCommerce CouponA coupon readers can copy.PRO
Add ProductA product with its live price and an add-to-cart button.PRO

In the free version the Pro block types are greyed out and carry a Pro badge rather than being hidden, so you can see what exists. One sentence under the whole list names them all, rather than ten identical notes stacked under ten buttons.

What every block shares #

Whatever its type, every block has these fields. Open any block row and they are at the top.

FieldWhat it does
IconAny icon from the picker, or none. No icon gives you a text-only button.
ImageA picture instead of the icon. While this is set it wins over the icon, so you can swap between the two without losing either.
Primary color and Secondary colorOnly shown when the button style is Advanced and Button colors is Custom. Hidden rather than removed otherwise. Defaults to a neutral grey, or the app’s brand colour for a messaging block.
When to show itAlways show, or Schedule appearance. See Scheduling a block.
Remove this blockTakes the block off the card.

The simplest block and the one you will use most. Two fields: the address, and the button text.

Email #

Two fields: the button text, and an email address. Pressing the button hands the address to the visitor’s own email app rather than opening a webmail page.

The address is checked when you save. A leading mailto: is stripped for you, and a row that is not a valid address after that is not kept — an email button that does nothing is worse than no email button.

The messaging blocks PRO #

Six buttons that open a conversation with a message already written in it. All six ask for the same three things, in the same order:

FieldWhat it does
PhoneThe number, digits only, country code first. Required — a row with no usable number is not kept.
Button textWhat the button says. Left empty, the app’s own name is used.
Message to start with (optional)Only offered for the four apps that accept one: WhatsApp, Telegram, Viber and SMS.

What each app does differently #

AppMessage?Opens a new tab?Worth knowing
WhatsAppYesYesThe same number reaches WhatsApp anywhere in the world.
TelegramYesNoMatches on the whole number, so a local number reaches nobody.
ViberYesNoAlso matches on the whole number.
SMSYesNoThe phone’s own composer.
SignalNoYesSignal cannot start a chat with a message written here, so it opens empty.
iMessageNoNoOpens Messages on iPhone, iPad and Mac, and does nothing anywhere else. The label on the button is the warning.

Every one of these fields carries the same hint: Country code first, digits only, no + and no spaces. The + and the spaces are the two reasons these buttons most often fail — a number typed as +44 7700 900123 does not match.

The video blocks #

YouTube and Vimeo behave identically apart from the address they accept. Each has the same four options.

FieldWhat it does
The addressThe whole video address. Share addresses work as well as the ones in the address bar.
The titleWords shown above the player, or used as the button text when it is a link.
Display typeEmbed video shows the player inside the block. Link to video makes it a plain button that opens the video on the site’s own player.
VisibleOn, the player is there straight away with no click. Off, it is behind a button — which is what you want on a card that already has a lot in it.
MuteStart the player without sound. YouTube and Vimeo only.
AutoplayPlay as soon as the player is shown. YouTube and Vimeo only. Browsers require Mute to be on as well, so Autoplay without Mute does nothing — that is the browser’s rule, not the plugin’s.

For Vimeo there is one extra warning: paste the whole address of an unlisted video so its privacy hash comes with it. A bare video number is not enough.

TipEmbeds are lazy. A video on a card that is never expanded, or a card on a page nobody scrolls to, costs nothing to load. That is why Visible being off is a genuinely useful default on a long card.

The audio, booking and social blocks #

These four follow the same pattern as the video blocks — an address, a title, a Display type and a Visible switch — with two differences worth knowing.

BlockDisplay type optionsNote
SpotifyEmbed player, Link to SpotifyAccepts a track, album, playlist, episode, show or artist.
CalendlyEmbed scheduler, Link to CalendlyA scheduler embedded on a card is quite tall. Consider Visible off and a button instead.
TikTokEmbed profile, Link to TikTokAn embed draws the creator card; a single video or photo link embeds that post instead.
PinterestEmbed profile, Link to PinterestAn embed draws a profile card with its newest pins, or a single pin. Pinterest will not let any of its pages be framed, so this is read from its public feed rather than embedded directly. A board can only be linked to.

The divider block #

The one block that carries no link. It is for splitting a long card into readable sections.

FieldOptions
TitleLeave empty for a divider with no text.
Text styleDefault, UPPERCASE, Small, Upper small.
AlignmentLeft, Center, Right.
Top space and Bottom spaceDefault, Small, Large.
DividerShow draws the line either side of the text. Hide leaves just the spacing, which is a useful way to make a gap.
Text colorLeave empty to use the card’s text colour.

A divider is the block to reach for when a card has grown past about eight buttons and started to feel like a list.

The contact card block PRO #

Same idea as the Save contact panel, but placed anywhere on the card rather than pinned to the corner. Useful when you want the contact button in the middle of a card, next to the email button.

It carries its own copy of the contact fields — full name, phone, email, organisation, job title, website, address and note. Every box is optional, and anything left empty falls back to the card’s Save contact panel, so you only fill in what is different here.

See The Save contact panel for what each field means.

The Shortcode block PRO #

Runs any shortcode from your site inside the card. The right tool when your booking form, donation form or membership form already exists as a shortcode.

FieldWhat it does
TitleAn optional heading above the output.
ShortcodePaste it with its brackets. A bare tag on its own is enough too — the brackets are added for you.
Shortcode displayFoldable button puts the output behind the button. Inline, no button shows it straight away.

CarefulEither way, the shortcode runs on every page load. Folding only hides the result; it does not stop anything running. If the shortcode is expensive — a query, an API call — use the foldable button and be aware the work still happens.

The WooCommerce blocks PRO #

Two blocks that need WooCommerce. If WooCommerce is not active the buttons are disabled and say so, and a card that already had one keeps working with its settings — the button stays, with a note that the shop can no longer honour it.

You do not need WooCommerce for anything else in this plugin. The two blocks are the only thing that does.

The Product block #

A product on the card, with its picture, title and price read live from your shop. Nothing is copied onto the card, so a product you rename or reprice needs no attention here.

FieldWhat it does
ProductSearch by name or SKU, then choose. The chosen product is shown as a small card with its picture, name, price and stock, and a Change button.
Display typeProduct info opens a panel with the picture, title, price and a buy button. Link to product is a plain button to the product page.
VisibleShow the product straight away, without a click.
Image sizeDefault, Medium, Small. Small takes about 30% of the width and moves the photo beside the name and price, with the button under them rather than across the bottom. It is the only one that reflows.
Button textThe label on the button. Used for both the buy button and the view product link.
Product background, Product text color, Button background, Button text color, Button text alignmentColours for the panel and its button. Empty means use the block’s own colours. Setting a background on its own and the text colour is worked out for you.

The Coupon block #

A coupon a reader taps to copy to the clipboard.

FieldWhat it does
CouponPick one of the coupons WooCommerce holds, or type any other code by hand.
Coupon codeThe code itself, when you typed it rather than picked it.
What is it forA line above the coupon explaining what it does.
Label above the codeThe small heading printed over the coupon.
Hint beside the codeThe small text saying it can be copied.
Note spacingDefault, Smaller, Bigger — 25, 15 and 35 pixels.
Note background, Note text colorColours for that explanatory line.
Coupon background, Coupon text colorColours for the code, its label and the dashed edge around it.
Link text and Link URLAn optional button under the coupon — Shop now by default. Opens in a new tab.
Link background, Link text color, Link text alignmentColours for that button.
VisibleShow the coupon straight away.

If WooCommerce no longer holds a code you have saved, the card still shows it and says so: WooCommerce no longer holds this code. The card still shows it, but the shop will not honour it.

Reordering and removing #

  • Drag the handle on the left of a row to move the block. Keyboard users can focus the handle and hold Alt with the arrow keys.
  • Remove this block is at the bottom of an open row.
  • Blocks that are scheduled but not live right now are left out of the page entirely — not printed as an empty row — so a hidden divider cannot change the spacing around the blocks that are showing.
What are your feelings