KOZ Copy Actions

Description

KOZ Copy Actions lets you turn selected text, values, buttons, links or other frontend elements into copy-to-clipboard targets.

You choose what can be copied by adding simple CSS selectors in the plugin settings. The plugin then handles mouse clicks and keyboard activation, shows optional feedback, and copies the value directly in the visitor’s browser.

No copied content is sent to the developer or to an external service.

Typical uses

  • Copy coupon codes, reference numbers, wallet addresses or contact details.
  • Add a copy action to code snippets, IDs or short text values.
  • Copy the current value of an input, textarea or select field.
  • Copy a value stored in a data attribute.
  • Copy text or a form value from another element on the same page.
  • Limit copy actions to selected paths or sections of the site.
  • Use the same configuration on multilingual WordPress sites.

Quick start

  1. Install and activate KOZ Copy Actions.
  2. Open KOZ Suite -> Copy Actions in the WordPress admin.
  3. Enable Copy actions.
  4. In CSS selectors, add one selector per line for the elements visitors should be able to copy.
  5. Save the settings.
  6. Open a public page and click or keyboard-activate a matching element.

Example selector:

 .copy-me 

If your page contains:

<span class="copy-me">PROMO-2026</span>

the visitor can copy PROMO-2026 by activating that element.

Choosing what gets copied

The plugin uses the first applicable source below.

1. Explicit value with data-copy-value

Use this when the visible label is different from the value that should be copied.

<button class="copy-me" data-copy-value="PROMO-2026">Copy promo code</button>

Copied value: PROMO-2026

2. Another element with data-copy-target

Use a local ID reference beginning with #.

<input id="account-number" value="UA123456789">
<button class="copy-me" data-copy-target="#account-number">Copy account number</button>

Copied value: the current value of #account-number.

3. Form controls

If a matching element is an input, textarea or select field, the plugin copies its current value.

4. Normal page content

For other matching elements, the plugin copies the element’s visible text content.

Supported selectors

For safety and predictable behaviour, settings accept simple selectors only:

  • A class selector such as .copy-me
  • An ID selector such as #copy-code
  • Supported data-attribute selectors such as [data-copy-value], [data-copy-target], [data-copy-key] and [data-uafree-copy]

Add one selector per line. Duplicate entries are removed automatically.

Limit copy actions to selected pages

The Allowed paths field is optional.

Leave it empty to enable matching copy targets on all public paths.

Add one local path per line to restrict where the frontend handler runs.

Examples:

/contact/
/donate/
/products/*

An ending * matches all paths beginning with that prefix.

For multilingual sites with language-specific URLs, add each required language path, for example:

/en/contact/
/uk/kontakty/

Accessibility and feedback

KOZ Copy Actions can:

  • Add keyboard focus to matching non-interactive elements.
  • Add button semantics and an accessible label where appropriate.
  • Support activation with Enter or Space.
  • Show an optional copy icon.
  • Show localized success or error messages.
  • Position feedback at the bottom centre, bottom left or bottom right.
  • Preserve formatting or collapse repeated whitespace.
  • Prevent navigation when a matching link is used as a copy action.

Multilingual sites and translations

The plugin is internationalized with the koz-copy-actions text domain.

Admin labels and frontend messages such as Copied, Could not copy and Copy to clipboard use WordPress translation functions and can be translated through the standard WordPress.org translation system.

The copy logic itself is language-independent: it works with the rendered content of the current page, so the same selector configuration can be used with multilingual plugins and translated pages.

If your multilingual setup uses different URL paths for each language and you use Allowed paths, add the corresponding path for each language.

KOZ Copy Actions does not translate the content being copied. It copies the value or text that is already rendered on the current page.

Privacy

Clipboard operations happen in the visitor’s browser.

The plugin does not:

  • Store copied values.
  • Store IP addresses or visitor identifiers.
  • Set tracking cookies.
  • Send analytics or telemetry.
  • Make external requests for copy functionality.

Compatibility notes

KOZ Copy Actions can detect another active clipboard plugin and warns administrators before two copy handlers are enabled on the same elements.

Compatibility with historical UA FREE Copy settings and frontend data attributes is retained for existing installations, but new installations do not need to configure or know about the former package.

Installation

  1. Install KOZ Copy Actions from the WordPress Plugin Directory or upload the plugin ZIP through Plugins -> Add New Plugin -> Upload Plugin.
  2. Activate the plugin.
  3. Open KOZ Suite -> Copy Actions.
  4. Enable copy actions.
  5. Add one or more CSS selectors for the elements that should be copyable.
  6. Optionally restrict the feature to selected paths.
  7. Configure the copy icon, feedback message, whitespace and accessibility options.
  8. Click Save settings.
  9. Test the selected elements on a public page with both mouse and keyboard.

FAQ

Do I need to edit theme PHP files?

No. If your page builder, block editor or theme lets you add a CSS class or supported data attribute to an element, you can normally configure the copy action without editing PHP.

What happens if I use `.copy-me` as a selector?

Every public element with the class copy-me becomes a copy target on allowed pages. Normal text elements copy their rendered text. Form controls copy their current value.

Can the copied value be different from the visible text?

Yes. Add data-copy-value to the matching element.

Can one button copy text from another element?

Yes. Use data-copy-target="#element-id" and make sure the referenced element has that ID.

Does it work with WPML, Polylang or other multilingual setups?

The plugin does not require a specific multilingual integration. It operates on the rendered frontend content and simple selectors, so it can work on translated pages. If you restrict copy actions by URL path, configure the required path for each language.

Does the plugin translate copied content?

No. It copies the content already displayed on the current page.

Are the plugin interface and copy messages translatable?

Yes. User-facing strings are internationalized with the koz-copy-actions text domain and are compatible with the WordPress.org translation system.

Does the plugin send copied values anywhere?

No. Clipboard operations are performed locally in the browser and copied values are not sent to the developer or an external service.

Can I disable navigation on links used for copying?

Yes. Enable Prevent navigation when a matching link is clicked in the plugin settings.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“KOZ Copy Actions” is open source software. The following people have contributed to this plugin.

Contributors

Translate “KOZ Copy Actions” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.1.12

  • Expanded the WordPress.org documentation with a complete quick-start guide and copy examples.
  • Added clear documentation for multilingual WordPress sites and translation support.
  • Added FAQ entries explaining selectors, data attributes, path restrictions and privacy.
  • Moved historical UA FREE migration information out of the main feature list.
  • No frontend or settings behaviour changed in this release.

1.1.11

  • Added the required translators comment for the diagnostics placeholder.
  • Removed the Domain Path header because this package does not ship a local translations directory.

1.1.10

  • Restored the real admin settings page to the stable plugin-specific slug koz-copy-actions.
  • Removed the hidden compatibility redirect that could leave the WordPress admin content area blank.
  • Kept all plugin-owned PHP symbols, options, hooks, handles and JavaScript globals under the unique kozcoac / KOZCOAC prefix and ramirkz\kozcopyactions namespace.

1.1.9

  • Added a backward-compatible admin-page alias so existing links using page=koz-copy-actions open the current KOZ Copy Actions settings page instead of showing an access error.
  • Primary internal page slug remains uniquely prefixed as kozcoac-copy-actions.

1.1.8

  • Standardized every plugin-owned PHP symbol, option, hook, script handle, page slug and JavaScript global under the unique kozcoac prefix or ramirkz\kozcopyactions namespace.
  • Replaced generic KOZ Suite identifiers inside this plugin with plugin-specific identifiers.
  • Preserved migration from previous UA FREE Copy settings.
  • Preserved frontend compatibility with existing UA FREE data attributes and copy-success event listeners.
  • Updated the developer support block and LinkedIn contact.