
Clipboard Snippet Copier lets you share ready-to-use shortcodes, demo layouts, or any reusable code snippets with your visitors. Click a button and the snippet is copied straight to their clipboard. No manual selection, no copy/paste errors.
You decide whether the snippet stays hidden (fetched only when copied) or is displayed inline as a styled code block. Either mode is one click away for the visitor.
Why use it?
- Sell or showcase shortcodes โ give buyers a “Copy Demo” button without exposing messy markup.
- Document your code โ share PHP / JS / CSS examples on tutorial pages with a proper copy button.
- Reduce support tickets โ eliminate “the shortcode didn’t work” issues caused by smart quotes, missing brackets, or whitespace mangling.
- Track engagement โ built-in per-snippet copy counter shows what your audience actually uses.
Key features
- ๐ One-click copy to clipboard with success/failure tooltip.
- ๐ Hidden mode โ the snippet is stored in the admin and fetched via AJAX only when copied (never rendered in the HTML).
- ๐๏ธ Inline mode โ render the snippet visibly as a
<pre><code>block with a copy button on top. - ๐งฑ Gutenberg block with sidebar controls (snippet ID, label, inline toggle, language hint).
- ๐ข Shortcode for the Classic Editor, WPBakery, Elementor and any other builder.
- ๐งฎ Copy counter โ sortable “Copies” column on the admin list, so you can see what’s popular.
- โ๏ธ Settings page โ default label, default CSS class, tooltip text, guest-access toggle.
- ๐ CodeMirror editor on the snippet edit screen โ keeps your indentation and angle brackets intact.
- โก Tiny footprint โ no jQuery dependency on the frontend, no external libraries.
- ๐ Translation-ready.
How it works
- You add a snippet in Code Snippets Add New and note its ID.
- You drop the Clipboard Snippet block (or the
[clipsnco_code_copy_btn]shortcode) onto any page. - When a visitor clicks the button, the snippet is fetched over AJAX and written to their clipboard โ without ever appearing in the page source (unless you turned on inline mode).
Usage
Quick start (shortcode)
[clipsnco_code_copy_btn id="123" label="Copy Code"]
Where 123 is the ID of your snippet (visible in the Code Snippets admin list).
Shortcode attributes
id(required, integer) โ the snippet ID.label(optional, string) โ button text. Defaults to the value set on the Settings page.class(optional, string) โ extra CSS classes added to the button.inline(optional, “yes” / “no”) โ whenyes, the snippet is rendered as a<pre><code>block with a copy button on top. Defaultno.language(optional, string) โ e.g.php,js,css. Adds alanguage-xxxclass on the<code>element so syntax-highlighter libraries (Prism.js, highlight.js) can colourise it.
Examples:
- Hidden snippet, custom label:
[clipsnco_code_copy_btn id="42" label="Copy shortcode"] - Inline display with PHP highlighting:
[clipsnco_code_copy_btn id="42" inline="yes" language="php"] - Extra CSS class for theme styling:
[clipsnco_code_copy_btn id="42" class="my-cta-btn"]
Gutenberg block
In the block editor, search for “Clipboard Snippet” and insert it. The sidebar lets you set:
- Snippet ID โ the post ID of the snippet to copy.
- Button label โ overrides the default label.
- Show code inline โ toggle hidden vs inline display.
- Language hint โ optional syntax-highlighter class.
The block is server-rendered, so you can switch between block and shortcode usage freely.
Alternative button markup
If your page builder won’t let you drop a <button> element, you can put any element on the page with the data attribute or the helper class โ the plugin’s frontend script picks it up automatically:
<a href="#" class="wcp-code-copy-btn" data-codecopy-id="123">Copy</a>
โฆor, when even attributes aren’t allowed, use the class-only form:
<span class="wcp-code-copy-btn data-codecopy-id-123">Copy</span>
Settings
Code Snippets Settings lets you configure:
- Default button label
- Default CSS class applied to every button
- Tooltip text shown on copy success / failure
- Whether non-logged-in visitors are allowed to copy snippets
Copy counter
Every successful copy by a non-editor user bumps a _clipsnco_copy_count post meta value. The count is shown in the Copies column on the snippets admin list. Click the column header to sort by most-copied.
Styling
The button receives the class wcp-code-copy-btn plus anything you add via the shortcode/block class attribute. The inline-mode wrapper uses these classes (override them from your theme):
.clipsnco-inline-wrapโ outer container.clipsnco-inline-toolbarโ top bar containing the copy button.clipsnco-preโ the<pre>element.clipsnco-codeโ the<code>element (also getslanguage-xxxwhen set)
Screenshots

The Code Snippets admin list with the ID, Shortcode and Copies columns.

Editing a snippet โ the CodeMirror editor keeps indentation and syntax intact.

The Settings page (default label, default class, tooltip text, guest-access toggle).

The Clipboard Snippet Gutenberg block with its sidebar controls.

A copy button on the frontend, with the success tooltip.

Inline mode rendering the snippet as a styled <pre><code> block.