{"id":86485,"date":"2018-05-30T04:53:21","date_gmt":"2018-05-30T04:53:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/copy-the-code\/"},"modified":"2026-04-23T06:34:35","modified_gmt":"2026-04-23T06:34:35","slug":"copy-the-code","status":"publish","type":"plugin","link":"https:\/\/ka.wordpress.org\/plugins\/copy-the-code\/","author":23117362,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"5.5.2","stable_tag":"5.5.2","tested":"6.9.4","requires":"4.4","requires_php":"5.6","requires_plugins":null,"header_name":"Copy Anything to Clipboard","header_author":"Clipboard Agency","header_description":"Copy the code into \ud83d\udccb (clipboard). Default support added for <code>&lt;pre&gt;<\/code> tag. Documentations and more visit <a href=\"https:\/\/github.com\/maheshwaghmare\/copy-the-code\/\"> on GitHub<\/a>.","assets_banners_color":"251a43","last_updated":"2026-04-23 06:34:35","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.paypal.me\/mwaghmare7\/","header_plugin_uri":"https:\/\/clipboard.agency\/","header_author_uri":"https:\/\/clipboard.agency\/","rating":4.6,"author_block_rating":0,"active_installs":10000,"downloads":351870,"num_ratings":35,"support_threads":4,"support_threads_resolved":3,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"Mahesh901122","date":"2018-05-30 07:35:09"},"1.1.0":{"tag":"1.1.0","author":"Mahesh901122","date":"2018-06-06 11:10:53"},"1.2.0":{"tag":"1.2.0","author":"Mahesh901122","date":"2018-08-11 13:40:47"},"1.3.0":{"tag":"1.3.0","author":"Mahesh901122","date":"2018-10-28 10:30:53"},"1.3.1":{"tag":"1.3.1","author":"Mahesh901122","date":"2019-06-23 19:24:19"},"1.4.0":{"tag":"1.4.0","author":"Mahesh901122","date":"2019-07-18 17:25:06"},"1.4.1":{"tag":"1.4.1","author":"Mahesh901122","date":"2019-07-24 15:38:22"},"1.5.0":{"tag":"1.5.0","author":"Mahesh901122","date":"2019-09-20 18:43:16"},"1.6.0":{"tag":"1.6.0","author":"Mahesh901122","date":"2019-09-30 17:05:16"},"1.6.1":{"tag":"1.6.1","author":"Mahesh901122","date":"2020-04-07 16:54:32"},"1.7.0":{"tag":"1.7.0","author":"Mahesh901122","date":"2020-04-23 16:46:27"},"1.7.1":{"tag":"1.7.1","author":"Mahesh901122","date":"2020-04-26 09:58:01"},"1.7.2":{"tag":"1.7.2","author":"Mahesh901122","date":"2020-04-26 10:21:35"},"1.7.3":{"tag":"1.7.3","author":"Mahesh901122","date":"2020-05-24 09:03:37"},"1.7.4":{"tag":"1.7.4","author":"Mahesh901122","date":"2020-06-11 17:15:29"},"1.7.5":{"tag":"1.7.5","author":"Mahesh901122","date":"2020-06-18 16:15:38"},"1.8.0":{"tag":"1.8.0","author":"Mahesh901122","date":"2020-06-21 08:18:19"},"2.0.0":{"tag":"2.0.0","author":"Mahesh901122","date":"2020-07-23 15:09:32"},"2.1.0":{"tag":"2.1.0","author":"Mahesh901122","date":"2020-08-02 14:48:13"},"2.1.1":{"tag":"2.1.1","author":"Mahesh901122","date":"2021-04-10 07:02:47"},"2.2.0":{"tag":"2.2.0","author":"Mahesh901122","date":"2021-04-17 19:10:05"},"2.2.1":{"tag":"2.2.1","author":"Mahesh901122","date":"2021-08-03 15:55:33"},"2.2.2":{"tag":"2.2.2","author":"Mahesh901122","date":"2021-08-05 17:41:23"},"2.3.0":{"tag":"2.3.0","author":"Mahesh901122","date":"2022-07-26 20:46:24"},"2.3.1":{"tag":"2.3.1","author":"Mahesh901122","date":"2022-08-07 17:31:11"},"2.3.2":{"tag":"2.3.2","author":"Mahesh901122","date":"2022-08-07 17:42:15"},"2.3.3":{"tag":"2.3.3","author":"Mahesh901122","date":"2022-08-08 23:09:21"},"2.3.4":{"tag":"2.3.4","author":"Mahesh901122","date":"2022-08-09 08:09:24"},"2.3.5":{"tag":"2.3.5","author":"Mahesh901122","date":"2022-08-11 14:25:47"},"2.4.0":{"tag":"2.4.0","author":"surror","date":"2022-08-13 20:58:24"},"2.4.1":{"tag":"2.4.1","author":"surror","date":"2022-08-14 14:43:37"},"2.4.2":{"tag":"2.4.2","author":"surror","date":"2022-08-18 20:37:37"},"2.5.0":{"tag":"2.5.0","author":"surror","date":"2022-08-23 21:18:52"},"2.6.0":{"tag":"2.6.0","author":"surror","date":"2022-10-02 16:09:54"},"2.6.1":{"tag":"2.6.1","author":"surror","date":"2022-10-03 16:35:39"},"2.6.2":{"tag":"2.6.2","author":"surror","date":"2022-12-25 19:13:59"},"2.6.3":{"tag":"2.6.3","author":"surror","date":"2023-06-20 15:36:17"},"2.6.4":{"tag":"2.6.4","author":"surror","date":"2023-07-22 10:56:31"},"2.6.5":{"tag":"2.6.5","author":"surror","date":"2023-09-20 20:42:22"},"3.0.0":{"tag":"3.0.0","author":"surror","date":"2023-10-21 20:26:50"},"3.1.0":{"tag":"3.1.0","author":"surror","date":"2023-10-29 19:49:32"},"3.2.0":{"tag":"3.2.0","author":"surror","date":"2023-11-12 13:07:59"},"3.2.1":{"tag":"3.2.1","author":"surror","date":"2023-11-20 20:28:36"},"3.3.0":{"tag":"3.3.0","author":"surror","date":"2023-11-24 20:41:09"},"3.4.0":{"tag":"3.4.0","author":"surror","date":"2023-11-28 21:48:05"},"3.4.1":{"tag":"3.4.1","author":"surror","date":"2023-11-29 21:05:37"},"3.4.2":{"tag":"3.4.2","author":"surror","date":"2023-12-05 21:12:26"},"3.4.3":{"tag":"3.4.3","author":"surror","date":"2023-12-11 20:42:16"},"3.5.0":{"tag":"3.5.0","author":"surror","date":"2023-12-24 19:25:41"},"3.5.1":{"tag":"3.5.1","author":"surror","date":"2024-01-02 19:39:28"},"3.5.2":{"tag":"3.5.2","author":"surror","date":"2024-02-22 05:23:24"},"3.6.0":{"tag":"3.6.0","author":"surror","date":"2024-03-12 15:15:03"},"3.7.0":{"tag":"3.7.0","author":"surror","date":"2024-03-24 13:25:52"},"3.8.0":{"tag":"3.8.0","author":"surror","date":"2024-04-11 03:50:28"},"3.8.1":{"tag":"3.8.1","author":"surror","date":"2024-05-07 18:07:42"},"3.8.2":{"tag":"3.8.2","author":"surror","date":"2024-05-29 19:37:48"},"3.8.3":{"tag":"3.8.3","author":"surror","date":"2024-10-10 19:27:47"},"4.0.0":{"tag":"4.0.0","author":"surror","date":"2024-08-17 18:39:51"},"4.0.2":{"tag":"4.0.2","author":"surror","date":"2024-10-10 19:27:47"},"4.0.3":{"tag":"4.0.3","author":"surror","date":"2024-10-12 15:38:45"},"4.0.4":{"tag":"4.0.4","author":"surror","date":"2024-12-07 10:11:16"},"4.0.5":{"tag":"4.0.5","author":"surror","date":"2025-02-18 06:29:36"},"4.1.0":{"tag":"4.1.0","author":"surror","date":"2025-11-11 13:36:32"},"4.1.1":{"tag":"4.1.1","author":"surror","date":"2025-11-11 13:36:32"},"4.1.4":{"tag":"4.1.4","author":"clipboardagency","date":"2026-01-24 18:52:04"},"5.0.0":{"tag":"5.0.0","author":"clipboardagency","date":"2026-02-01 23:32:30"},"5.0.1":{"tag":"5.0.1","author":"clipboardagency","date":"2026-02-07 13:36:29"},"5.1.0":{"tag":"5.1.0","author":"clipboardagency","date":"2026-02-08 12:33:40"},"5.2.0":{"tag":"5.2.0","author":"clipboardagency","date":"2026-02-16 05:59:03"},"5.3.0":{"tag":"5.3.0","author":"clipboardagency","date":"2026-02-22 09:17:04"},"5.3.1":{"tag":"5.3.1","author":"clipboardagency","date":"2026-02-23 19:32:36"},"5.4.0":{"tag":"5.4.0","author":"clipboardagency","date":"2026-03-05 07:33:52"},"5.4.1":{"tag":"5.4.1","author":"clipboardagency","date":"2026-03-08 21:17:41"},"5.5.0":{"tag":"5.5.0","author":"clipboardagency","date":"2026-03-10 07:00:11"},"5.5.1":{"tag":"5.5.1","author":"clipboardagency","date":"2026-03-12 18:42:12"},"5.5.2":{"tag":"5.5.2","author":"clipboardagency","date":"2026-04-23 06:34:35"}},"upgrade_notice":[],"ratings":{"1":1,"2":1,"3":2,"4":3,"5":28},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3451645,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3451645,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3451645,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3451644,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3513433,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"meta\":{\"title\":\"Copy Anything to Clipboard\",\"description\":\"One-click copy buttons for code, text, coupon codes, and more. Try the Global Injector, shortcodes, and Gutenberg blocks.\",\"author\":\"clipboardagency\",\"categories\":[\"clipboard\",\"copy\",\"copy-to-clipboard\"]},\"landingPage\":\"\\\/wp-admin\\\/admin.php?page=ctc\",\"preferredVersions\":{\"php\":\"latest\",\"wp\":\"latest\"},\"features\":{\"networking\":true},\"login\":true,\"steps\":[{\"step\":\"setSiteOptions\",\"options\":{\"blogname\":\"Copy Anything to Clipboard Demo\"}},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"copy-the-code\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":{"ctc\/copy-icon":{"$schema":"https:\/\/json.schemastore.org\/block.json","apiVersion":3,"name":"ctc\/copy-icon","title":"Copy Icon","description":"Allow user to copy code with an icon.","version":"1.0.0","icon":"clipboard","usesContext":["postId","postType","queryId"],"attributes":{"content":{"type":"string","default":""}},"category":"ctc-blocks","textdomain":"ctc","style":"file:.\/css\/style.css","editorScript":"file:.\/js\/index.js"},"ctc\/copy-button":{"$schema":"https:\/\/json.schemastore.org\/block.json","apiVersion":3,"name":"ctc\/copy-button","title":"Copy Button","description":"Allow user to copy code with a button.","version":"1.0.0","icon":"clipboard","usesContext":["postId","postType","queryId"],"attributes":{"content":{"type":"string","default":""},"buttonText":{"type":"string","default":"Copy to Clipboard"},"buttonTextCopied":{"type":"string","default":"Copied!"}},"category":"ctc-blocks","textdomain":"ctc","style":"file:.\/css\/style.css","editorScript":"file:.\/js\/index.js"},"ctc\/social-share":{"$schema":"https:\/\/json.schemastore.org\/block.json","apiVersion":3,"name":"ctc\/social-share","title":"Social Share","description":"Allow user to share content on social media.","version":"1.0.0","icon":"share","usesContext":["postId","postType","queryId"],"attributes":{"label":{"type":"string","default":"Share on:"},"showLabel":{"type":"boolean","default":true},"facebook":{"type":"boolean","default":true},"twitter":{"type":"boolean","default":true},"whatsapp":{"type":"boolean","default":true}},"supports":{"color":{"background":true,"text":true},"typography":{"fontSize":true,"lineHeight":true,"textAlign":true,"__experimentalDefaultControls":{"fontSize":true}},"spacing":{"margin":true,"padding":true}},"category":"ctc-blocks","textdomain":"ctc","style":"file:.\/css\/style.css","editorScript":"file:.\/js\/index.js"},"ctc\/term-title":{"$schema":"https:\/\/json.schemastore.org\/block.json","apiVersion":3,"name":"ctc\/term-title","title":"Term Title","description":"Display the title of the term.","version":"1.0.0","icon":"smiley","attributes":{"title":{"type":"string","default":""},"taxonomy":{"type":"object","default":{"slug":"category","name":"Category"}},"search":{"type":"string","default":""}},"supports":{"color":{"background":true,"text":true,"link":true,"enableContrastChecker":true,"gradients":true},"typography":{"fontSize":true,"lineHeight":true,"textAlign":true,"__experimentalDefaultControls":{"fontSize":true}},"spacing":{"margin":true,"padding":true},"align":true},"category":"ctc-blocks","textdomain":"ctc","style":"file:.\/css\/style.css","editorScript":"file:.\/js\/index.js","editorStyle":"file:.\/css\/editor.css"}},"tagged_versions":["1.0.0","1.1.0","1.2.0","1.3.0","1.3.1","1.4.0","1.4.1","1.5.0","1.6.0","1.6.1","1.7.0","1.7.1","1.7.2","1.7.3","1.7.4","1.7.5","1.8.0","2.0.0","2.1.0","2.1.1","2.2.0","2.2.1","2.2.2","2.3.0","2.3.1","2.3.2","2.3.3","2.3.4","2.3.5","2.4.0","2.4.1","2.4.2","2.5.0","2.6.0","2.6.1","2.6.2","2.6.3","2.6.4","2.6.5","3.0.0","3.1.0","3.2.0","3.2.1","3.3.0","3.4.0","3.4.1","3.4.2","3.4.3","3.5.0","3.5.1","3.5.2","3.6.0","3.7.0","3.8.0","3.8.1","3.8.2","3.8.3","4.0.0","4.0.2","4.0.3","4.0.4","4.0.5","4.1.0","4.1.1","4.1.4","5.0.0","5.0.1","5.1.0","5.2.0","5.3.0","5.3.1","5.4.0","5.4.1","5.5.0","5.5.1","5.5.2"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"<p><strong>Global Injector \u2013 Copy Button Rules<\/strong><br \/>\nAdd and manage automatic copy button rules with <strong>CSS selectors, display conditions, and style presets<\/strong> like Button, Icon, and Cover.<\/p>","2":"<p><strong>Copy Buttons on the Frontend<\/strong><br \/>\nCopy buttons automatically appear on <strong>code snippets, blockquotes, commands, coupon codes, or any content element<\/strong>.<\/p>","3":"<p><strong>Shortcodes and Gutenberg Blocks<\/strong><br \/>\nAdd copy controls manually with <code>[copy]<\/code> \/ <code>[ctc]<\/code>, or use <strong>Copy Button<\/strong> and <strong>Copy Icon<\/strong> blocks in the WordPress block editor.<\/p>"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[17897,257325,20421,76538,80],"plugin_category":[36],"plugin_contributors":[230799,78154],"plugin_business_model":[],"class_list":["post-86485","plugin","type-plugin","status-publish","hentry","plugin_tags-clipboard","plugin_tags-copy-code","plugin_tags-copy-to-clipboard","plugin_tags-elementor","plugin_tags-shortcode","plugin_category-analytics","plugin_contributors-clipboardagency","plugin_contributors-freemius","plugin_committers-clipboardagency","plugin_committers-mahesh901122","plugin_committers-surror","plugin_support_reps-clipboardagency","plugin_support_reps-maheshcai"],"banners":{"banner":"https:\/\/ps.w.org\/copy-the-code\/assets\/banner-772x250.png?rev=3451644","banner_2x":"https:\/\/ps.w.org\/copy-the-code\/assets\/banner-1544x500.png?rev=3451645","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/copy-the-code\/assets\/icon-128x128.png?rev=3451645","icon_2x":"https:\/\/ps.w.org\/copy-the-code\/assets\/icon-256x256.png?rev=3451645","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Copy Anything to Clipboard<\/strong> helps visitors copy <strong>text, links, coupon codes, commands, email addresses, AI prompts, and code snippets<\/strong> in one click\u2014no awkward text selection on mobile, no broken formatting in the clipboard.<\/p>\n\n<p>Use it on <strong>blogs, docs, WooCommerce and deal sites, SaaS landing pages, tutorials, and support hubs<\/strong> where you want fewer \u201chow do I copy this?\u201d questions and smoother sharing of URLs, promos, and technical steps.<\/p>\n\n<p><strong>Why site owners install it<\/strong><\/p>\n\n<ul>\n<li><strong>Better UX<\/strong> \u2013 Especially on touch devices, a dedicated copy control beats \u201clong-press to select.\u201d<\/li>\n<li><strong>Higher intent actions<\/strong> \u2013 Coupon codes, affiliate links, and checkout snippets convert better when copying is frictionless.<\/li>\n<li><strong>Flexible placement<\/strong> \u2013 Target elements automatically, or drop shortcodes\/blocks only where you need them.<\/li>\n<\/ul>\n\n<p><strong>Integration options<\/strong><\/p>\n\n<ul>\n<li><strong>Global Injector<\/strong> \u2013 Rules that match <strong>CSS selectors<\/strong> (e.g. <code>pre<\/code>, <code>code<\/code>, <code>.coupon<\/code>) plus <strong>display conditions<\/strong> and live preview.<\/li>\n<li><strong>Classic CSS selector rules<\/strong> \u2013 Site-wide automatic copy buttons for matching markup.<\/li>\n<li><strong>Shortcodes<\/strong> \u2013 <code>[copy]<\/code> (alias: <code>[ctc]<\/code>) for precise placement in the editor, widgets, and templates.<\/li>\n<li><strong>Elementor<\/strong> \u2013 25+ widgets for common patterns (code, coupon, email, prompt, deal link, and more).<\/li>\n<li><strong>Gutenberg<\/strong> \u2013 Native blocks for the block editor.<\/li>\n<\/ul>\n\n<p><strong>Highlights<\/strong><\/p>\n\n<ul>\n<li><strong>Button, Icon, and Cover<\/strong> presets; copy as <strong>plain text<\/strong> or <strong>HTML<\/strong> where supported.<\/li>\n<li><strong>Performance-minded<\/strong> \u2013 Combine display conditions with how you publish rules so assets run where copy UI is actually used.<\/li>\n<li><strong>Works with typical WordPress stacks<\/strong> \u2013 Themes, builders, and caching setups; mobile and modern desktop browsers.<\/li>\n<\/ul>\n\n\n\n<h3>How to use<\/h3>\n\n<p>You can add copy buttons anywhere on your WordPress site using one of the following methods:<\/p>\n\n<ol>\n<li><p><strong>EASY: <a href=\"https:\/\/docs.clipboard.agency\/guides\/shortcodes\/\">Shortcodes<\/a><\/strong>\nManually add copy controls with <code>[copy]<\/code> anywhere in your content.<\/p><\/li>\n<li><p><strong>AUTOMATIC: <a href=\"https:\/\/docs.clipboard.agency\/guides\/global-injector\/\">Global Injector<\/a><\/strong><br \/>\nAutomatically inject copy buttons into any element using <a href=\"https:\/\/docs.clipboard.agency\/guides\/css-selectors\/\">CS selectors<\/a> like <code>pre<\/code>, <code>code<\/code>, <code>blockquote<\/code>, or any custom selector with advanced display conditions.<\/p><\/li>\n<li><p><strong>Elementor Widgets<\/strong>\nAdd copy buttons visually using dedicated Elementor widgets.<\/p><\/li>\n<li><p><strong>Gutenberg Blocks<\/strong><br \/>\nInsert copy buttons directly inside the WordPress block editor using Gutenberg blocks.<\/p><\/li>\n<\/ol>\n\n<h3>METHOD 3 \u2013 Manually with \"Shortcodes\"<\/h3>\n\n<p>Use <strong><code>[copy]<\/code><\/strong> anywhere you want an explicit copy control (Classic editor, <strong>Shortcode<\/strong> block, widget areas, patterns, or PHP templates via <code>do_shortcode()<\/code>). <strong><code>[ctc]<\/code><\/strong> is the same shortcode with a shorter name\u2014use either.<\/p>\n\n<p><strong>How it works (matches the plugin code)<\/strong><\/p>\n\n<ul>\n<li><strong>Default<\/strong> layout is the <strong>inline<\/strong> preset (clickable text + icon). Switch with <strong><code>preset=\"button\"<\/code><\/strong>, <strong><code>preset=\"icon\"<\/code><\/strong>, or <strong><code>preset=\"cover\"<\/code><\/strong>.<\/li>\n<li><strong><code>text=\"\u2026\"<\/code><\/strong> (or text wrapped between <code>[copy]<\/code> and <code>[\/copy]<\/code>) is what lands on the clipboard.<\/li>\n<li><strong><code>display=\"\u2026\"<\/code><\/strong> overrides the visible label when it must differ from the copied string (masked secrets, mailto links, etc.).<\/li>\n<li><strong>Legacy pair:<\/strong> <strong><code>text=\"\u2026\"<\/code><\/strong> + <strong><code>content=\"\u2026\"<\/code><\/strong> \u2014 <code>content<\/code> is copied, <code>text<\/code> is what visitors see (handy for hiding long URLs behind a short CTA).<\/li>\n<\/ul>\n\n<p><strong>Try it on a fresh install<\/strong> \u2014 add a <strong>Shortcode<\/strong> block (or switch the block editor to <strong>Code editor<\/strong>), paste one snippet, <strong>Update<\/strong>, view the page, and tap the control.<\/p>\n\n<h3>Example 1 \u2013 Datetime inside a sentence<\/h3>\n\n<pre>\nNext live workshop: [copy]2030-03-19 10:00 America\/New_York[\/copy] \u2014 copy the full value for your calendar tool.\n<\/pre>\n\n<h3>Example 2 \u2013 Email inside a sentence<\/h3>\n\n<pre>\nBilling questions? Email [copy]invoices@clipboard.agency[\/copy] and include your order ID.\n<\/pre>\n\n<h3>Example 3 \u2013 Show the mailbox, copy a ready-made mailto link<\/h3>\n\n<pre>\n[copy display=\"support@clipboard.agency\"]mailto:support@clipboard.agency?subject=Question%20from%20website[\/copy]\n<\/pre>\n\n<p>Visitors see <strong>support@clipboard.agency<\/strong>; the clipboard receives the full <strong>mailto:<\/strong> string with the subject line.<\/p>\n\n<h3>Example 4 \u2013 Mini support block (swap in your real IDs)<\/h3>\n\n<pre>\n<p><strong>Before you open a ticket, include:<\/strong><\/p>\n<ul>\n<li>Order ID: [copy]WC-104592-UK[\/copy]<\/li>\n<li>Line item SKU: [copy]BM-HOODIE-M-NVY[\/copy]<\/li>\n<li>Return auth: [copy]REF-88C0A921[\/copy]<\/li>\n<\/ul>\n<\/pre>\n\n<h3>Example 5 \u2013 Coupon inside marketing copy<\/h3>\n\n<pre>\nLaunch week only \u2014 use [copy]SPRINGLAUNCH26[\/copy] at checkout for 25% off your first year.\n<\/pre>\n\n<h3>Example 6 \u2013 Long store URL, short friendly label<\/h3>\n\n<pre>\n[copy text=\"https:\/\/www.amazon.com\/dp\/B0D1EXAMPLE\/ref=nosim?tag=clipboard0d-20\"]Copy our Amazon pick[\/copy]\n<\/pre>\n\n<p>The visitor reads <strong>Copy our Amazon pick<\/strong>; the clipboard gets the full tagged URL.<\/p>\n\n<h3>Example 7 \u2013 Carrier-style tracking number<\/h3>\n\n<pre>\nTrack this shipment: [copy]1Z999AA10123456784[\/copy]\n<\/pre>\n\n<h3>Example 8 \u2013 Developer onboarding (framework installer)<\/h3>\n\n<pre>\nRun this once: [copy]npx create-next-app@latest my-shop --typescript --eslint --tailwind --app[\/copy]\n<\/pre>\n\n<h3>Example 9 \u2013 One-line WP-CLI maintenance<\/h3>\n\n<pre>\nSafe cache flush: [copy]wp cache flush &amp;&amp; wp rewrite flush[\/copy]\n<\/pre>\n\n<h3>Example 10 \u2013 API key visible on screen vs clipboard<\/h3>\n\n<pre>\nProduction key (rotate after testing): [copy text=\"sk_live_51QxYzAbCdEfGhIjKlMnOpQrStUvWx0123456789\" display=\"sk_live_\u20266789\"]\n<\/pre>\n\n<p>Visitors only see the shortened mask; the full secret is still copied once for trusted teammates.<\/p>\n\n<h3>Example 11 \u2013 Guest Wi\u2011Fi card<\/h3>\n\n<pre>\nSSID: [copy]Guest-Office-5G[\/copy] \u00b7 Passphrase: [copy text=\"WinterLake#2026!\" display=\"\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\"]\n<\/pre>\n\n<h3>Example 12 \u2013 Teams \/ Meet style link<\/h3>\n\n<pre>\nJoin the stand-up: [copy]https:\/\/teams.microsoft.com\/l\/meetup-join\/19%3ameeting_EXAMPLE%40thread.v2\/0?context=%7b%22Tid%22%3a%22...%7d[\/copy]\n<\/pre>\n\n<h3>Example 13 \u2013 Conference hashtag or emoji drop<\/h3>\n\n<pre>\nShare photos with [copy]#ClipboardAgencyLive2026[\/copy] \u2014 we monitor that tag all week.\n<\/pre>\n\n<h3>Example 14 \u2013 Button preset (big tap target, copies a long shell line)<\/h3>\n\n<pre>\n[copy preset=\"button\" button-text=\"Copy Docker install\" text=\"curl -fsSL https:\/\/get.docker.com | sh\"]\n<\/pre>\n\n<h3>Example 15 \u2013 Icon-only control in a tight layout<\/h3>\n\n<pre>\nDocker CE (Ubuntu): [copy text=\"sudo apt-get install docker-ce docker-ce-cli containerd.io\" preset=\"icon\" tooltip=\"Copy apt install line\"]\n<\/pre>\n\n<h3>Example 16 \u2013 Optional open-after-copy URL (great for coupons)<\/h3>\n\n<pre>\n[copy preset=\"button\" text=\"SAVE20\" button-text=\"Copy code &amp; checkout\" redirect=\"https:\/\/clipboard.agency\/checkout\/?coupon=SAVE20\"]\n<\/pre>\n\n<h3>Example 17 \u2013 Cover preset for a code\/card preview<\/h3>\n\n<pre>\n[copy preset=\"cover\" text=\"body { margin: 0; font-family: system-ui, sans-serif; }\" button-text=\"Copy CSS\"]body { margin: 0; \u2026 }[\/copy]\n<\/pre>\n\n<p>The visible card shows the shortened preview; the overlay copies the full CSS string.<\/p>\n\n<h3>Example 18 \u2013 Legacy `text` + `content` pair (same idea as Example 6)<\/h3>\n\n<pre>\n[copy text=\"Open the parking map\" content=\"https:\/\/maps.app.goo.gl\/dQw4w9WgXcQ\"]\n<\/pre>\n\n<h3>Example 19 \u2013 Bank-style reference (dummy data)<\/h3>\n\n<pre>\nSEPA reference: [copy]RF18539007547034[\/copy]\n<\/pre>\n\n<h3>Example 20 \u2013 Plain JSON snippet for API testers<\/h3>\n\n<pre>\nPaste this body: [copy]{ \"event\": \"signup\", \"plan\": \"pro\", \"trial_days\": 14 }[\/copy]\n<\/pre>\n\n<h3>METHOD 2 \u2013 Global Injector (NEW in v5.0.0)<\/h3>\n\n<p>The <strong>Global Injector<\/strong> is the most powerful way to automatically add copy buttons anywhere on your website.<\/p>\n\n<p>It allows you to target elements using CSS selectors and control exactly where the copy buttons appear.<\/p>\n\n<p><strong>Key Capabilities<\/strong><\/p>\n\n<ul>\n<li><strong>Display Conditions<\/strong> \u2013 Show copy buttons only on specific pages, posts, categories, or custom conditions.<\/li>\n<li><strong>Multiple Style Presets<\/strong> \u2013 Choose from <strong>Button<\/strong>, <strong>Icon<\/strong>, or <strong>Cover<\/strong> styles with live preview.<\/li>\n<li><strong>Advanced Targeting<\/strong> \u2013 Precisely target elements using CSS selectors such as <code>pre<\/code>, <code>code<\/code>, <code>blockquote<\/code>, and more.<\/li>\n<li><strong>Performance Optimized<\/strong> \u2013 Plugin assets load only on pages where copy buttons are used.<\/li>\n<\/ul>\n\n<h3>How to Use Global Injector<\/h3>\n\n<ol>\n<li>Go to <strong>Copy to Clipboard \u2192 Global Injector<\/strong> in your WordPress dashboard.<\/li>\n<li>Click <strong>Add New Injector<\/strong>.<\/li>\n<li>Enter the <strong>CSS selector<\/strong> you want to target (for example: <code>pre<\/code>, <code>code<\/code>, or <code>blockquote<\/code>).<\/li>\n<li>Select a <strong>style preset<\/strong> \u2013 Button, Icon, or Cover.<\/li>\n<li>(Optional) Configure <strong>Display Conditions<\/strong> to control where the copy button appears.<\/li>\n<li>Click <strong>Save<\/strong> and preview the changes on your site.<\/li>\n<\/ol>\n\n<h3>METHOD 2 \u2013 Automatically with \"CSS Selector\"<\/h3>\n\n<p>This is the <strong>quickest and most commonly used method<\/strong>. It automatically adds copy buttons to all elements that match a specific CSS selector.<\/p>\n\n<p>Use this method when you want copy buttons to appear <strong>automatically across your entire website<\/strong> without manually adding them to each element.<\/p>\n\n<h3>Examples<\/h3>\n\n<p><strong>Example 1 \u2013 Code Snippets<\/strong><\/p>\n\n<p>If your posts contain code snippets inside the <code>&lt;pre&gt;<\/code> tag, simply set the selector to <code>pre<\/code> (without the angle brackets <code>&lt;<\/code> and <code>&gt;<\/code>).<\/p>\n\n<p>The plugin will automatically add a <strong>copy button to every <code>&lt;pre&gt;<\/code> element<\/strong>, allowing visitors to copy code snippets with one click.<\/p>\n\n<p><strong>Example 2 \u2013 Blockquotes<\/strong><\/p>\n\n<p>If you want users to copy quotes from your blog posts, set the selector to <code>blockquote<\/code> (without the angle brackets <code>&lt;<\/code> and <code>&gt;<\/code>).<\/p>\n\n<p>A copy button will automatically appear for <strong>all blockquote elements<\/strong> on your site.<\/p>\n\n<p>You can target <strong>any HTML element or custom class<\/strong> using CSS selectors such as:<\/p>\n\n<ul>\n<li><code>pre<\/code> - If your posts contain code snippets inside the <code>&lt;pre&gt;<\/code> tag.<\/li>\n<li><code>code<\/code> - If your posts contain code snippets inside the <code>&lt;code&gt;<\/code> tag.<\/li>\n<li><code>blockquote<\/code> - If you want users to copy quotes from your blog posts.<\/li>\n<li><code>.coupon-code<\/code> - If your posts contain coupon codes.<\/li>\n<li><code>.email-address<\/code> - If your posts contain email addresses.<\/li>\n<li><code>.copy-this<\/code> - If you want to copy specific content.<\/li>\n<\/ul>\n\n<h3>How to Use with CSS Selector<\/h3>\n\n<ol>\n<li>Go to <strong>Copy to Clipboard<\/strong> in your WordPress dashboard.<\/li>\n<li>Click the <strong>Add New<\/strong> button.<\/li>\n<li>Enter the <strong>CSS selector<\/strong> you want to target (for example: <code>pre<\/code> or <code>blockquote<\/code>).<\/li>\n<li>Click <strong>Create<\/strong> to save the selector.<\/li>\n<li>Visit your page and you will see the <strong>copy button automatically added<\/strong> to the targeted elements.<\/li>\n<\/ol>\n\n<p>For more detailed guides:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/docs.clipboard.agency\/guides\/shortcodes\/\">Add copy buttons to blockquotes<\/a><\/li>\n<li><a href=\"https:\/\/clipboard.agency\/blog\/how-to-add-copy-buttons-to-code-blocks\/\">Add copy buttons to code snippets<\/a><\/li>\n<\/ul>\n\n<h3>METHOD 4 \u2013 Manually with \"Elementor Widgets\"<\/h3>\n\n<p>The plugin includes <strong>multiple Elementor widgets<\/strong> that allow you to easily add copy buttons to specific content on your page.<\/p>\n\n<p>Simply drag and drop a widget and configure the content you want visitors to copy.<\/p>\n\n<p>These widgets are useful for many types of content including:<\/p>\n\n<ul>\n<li>Emails<\/li>\n<li>ChatGPT \/ AI prompts<\/li>\n<li>Coupon codes<\/li>\n<li>Deals and affiliate links<\/li>\n<li>Inspirational quotes<\/li>\n<li>Contact information<\/li>\n<li>Addresses<\/li>\n<li>Social media posts<\/li>\n<li>Commands and technical code<\/li>\n<li>Passwords and secure values<\/li>\n<li>Notes, reminders, and checklists<\/li>\n<li>Blog content and educational materials<\/li>\n<li>Hashtags and social media resources<\/li>\n<li>Research notes and documentation<\/li>\n<li>Travel information and packing lists<\/li>\n<li>Personal messages and quotes<\/li>\n<\/ul>\n\n<p>You can explore <strong>live examples for all widgets here:<\/strong><\/p>\n\n<p><a href=\"https:\/\/clipboard.agency\/demos\/\">View Elementor widget demos<\/a><\/p>\n\n\n\n<h3>How to Use Elementor Widgets<\/h3>\n\n<ol>\n<li>Install and activate the <strong>Elementor<\/strong> plugin.<\/li>\n<li>Open a page and click <strong>Edit with Elementor<\/strong>.<\/li>\n<li>Search for the widget (for example: <strong>Copy<\/strong>).<\/li>\n<li>Drag and drop the widget onto the page.<\/li>\n<li>Enter the content you want users to copy.<\/li>\n<li>Publish the page and test the <strong>copy button<\/strong>.<\/li>\n<\/ol>\n\n<p>For full examples and widget demos:<\/p>\n\n<p><a href=\"https:\/\/clipboard.agency\/#demos\">See all live demos<\/a><\/p>\n\n\n\n<h3>Key benefits<\/h3>\n\n<ul>\n<li><strong>Global Injector<\/strong> \u2013 Selector-based rules, display conditions, and live preview from the admin.<\/li>\n<li><strong>One-click copy<\/strong> \u2013 No manual selection; clearer affordances for code, coupons, and contact fields.<\/li>\n<li><strong>Multiple presets<\/strong> \u2013 <strong>Button<\/strong>, <strong>Icon<\/strong>, and <strong>Cover<\/strong> layouts to fit dense UI or minimal docs.<\/li>\n<li><strong>Builder-native<\/strong> \u2013 Deep <strong>Elementor<\/strong> coverage plus <strong>Gutenberg<\/strong> blocks for modern sites.<\/li>\n<li><strong>Shortcodes<\/strong> \u2013 <code>[copy]<\/code> \/ <code>[ctc]<\/code> for surgical placement in the classic editor, widgets, and templates.<\/li>\n<li><strong>Mobile and cross-browser<\/strong> \u2013 Tested behavior on common phones and current Chrome, Firefox, Safari, and Edge.<\/li>\n<li><strong>Lightweight by design<\/strong> \u2013 Pair rules with conditions so you are not loading UI where it is unused.<\/li>\n<li><strong>PRO<\/strong> \u2013 Extra customization, behavior options, and analytics when you need to scale or brand the experience.<\/li>\n<\/ul>\n\n\n\n<p><strong>PRO<\/strong> adds advanced customization and analytics. Compare plans:<\/p>\n\n<p>https:\/\/clipboard.agency\/pricing\/<\/p>\n\n\n\n<h3>Trusted by thousands of WordPress sites<\/h3>\n\n<p><strong>10,000+ active installs<\/strong> rely on Copy Anything to Clipboard for docs, deals, dev blogs, and support content. It is built to cooperate with <strong>popular themes and page builders<\/strong> (including Elementor) instead of fighting your layout.<\/p>\n\n<h3>Feature requests<\/h3>\n\n<p>Ideas and edge cases help the roadmap. Share yours:<\/p>\n\n<p>https:\/\/clipboard.agency\/contact\/<\/p>\n\n<p><strong>Installation, Elementor, Gutenberg, performance, and HTML vs plain text<\/strong> are covered in the <strong>FAQ<\/strong> tab on this plugin page.<\/p>\n\n\n\n<h3>Google Chrome Extension<\/h3>\n\n<p>We also provide a <strong>Google Chrome Extension<\/strong> that allows users to quickly copy content from any website.<\/p>\n\n<p><strong>Chrome Web Store:<\/strong> https:\/\/chromewebstore.google.com\/detail\/copy-anything-to-clipboar\/mdljigkhfeiobmhanibkgjkldnabeahl<\/p>\n\n<p>The extension works perfectly alongside the <strong>Copy Anything to Clipboard WordPress plugin<\/strong>, making it easy to copy text, links, commands, code snippets, and more across the web.<\/p>\n\n\n\n<h3>Further reading<\/h3>\n\n<ul>\n<li><strong>Website:<\/strong> https:\/\/clipboard.agency\/<\/li>\n<li><strong>Documentation:<\/strong> https:\/\/clipboard.agency\/doc\/<\/li>\n<li><strong>Live demos:<\/strong> https:\/\/clipboard.agency\/#demos<\/li>\n<li><strong>Support:<\/strong> https:\/\/clipboard.agency\/contact\/<\/li>\n<li><strong>More plugins (WordPress.org profile):<\/strong> https:\/\/wordpress.org\/plugins\/search\/clipboardagency\/<\/li>\n<\/ul>\n\n<p>If the plugin saves you time, you can support ongoing development here:<\/p>\n\n<p>https:\/\/www.paypal.me\/mwaghmare7\/<\/p>\n\n\n\n<h3>Blocks<\/h3>\n\n<p>This plugin provides <strong>4 blocks for the WordPress block editor<\/strong>:<\/p>\n\n<h3>Copy Icon<\/h3>\n\n<p>Add a small icon that lets users quickly copy text or code to the clipboard.<\/p>\n\n<h3>Copy Button<\/h3>\n\n<p>Add a visible button that allows users to copy content with one click.<\/p>\n\n<h3>Term Title<\/h3>\n\n<p>Display the title of the current taxonomy term such as category or tag.<\/p>\n\n<h3>Social Share<\/h3>\n\n<p>Allow visitors to quickly share content across social media platforms.<\/p>\n\n<!--section=installation-->\n<p>You can go from zero to working copy buttons in a few minutes\u2014install the plugin, activate it, then add either a <strong>Global Injector<\/strong> rule or a <strong>shortcode<\/strong> on a test page.<\/p>\n\n<ol>\n<li>Install <strong>Copy Anything to Clipboard<\/strong> from this directory, or upload the plugin folder to:<\/li>\n<\/ol>\n\n<pre>\nwp-content\/plugins\n\n<\/pre>\n\n<ol>\n<li><p>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/p><\/li>\n<li><p>Go to <strong>WordPress Admin \u2192 Copy to Clipboard<\/strong>.<\/p><\/li>\n<li><p>Choose one of the following methods to add copy buttons:<\/p><\/li>\n<\/ol>\n\n<ul>\n<li><p><strong>Global Injector (Recommended)<\/strong><br \/>\nAutomatically inject copy buttons using CSS selectors and display conditions.<\/p><\/li>\n<li><p><strong>CSS Selector<\/strong><br \/>\nAutomatically add copy buttons to elements like <code>pre<\/code>, <code>code<\/code>, or <code>blockquote<\/code>.<\/p><\/li>\n<li><p><strong>Shortcodes<\/strong><br \/>\nManually add copy controls using <code>[copy]<\/code> or <code>[ctc]<\/code>.<\/p><\/li>\n<li><p><strong>Elementor Widgets<\/strong><br \/>\nDrag-and-drop widgets for Elementor page builder.<\/p><\/li>\n<li><p><strong>Gutenberg Blocks<\/strong><br \/>\nUse native WordPress blocks for copy buttons and icons.<\/p><\/li>\n<\/ul>\n\n<p>For full setup instructions, read the documentation:<\/p>\n\n<p>https:\/\/clipboard.agency\/doc\/<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20the%20global%20injector%3F\"><h3>What is the Global Injector?<\/h3><\/dt>\n<dd><p>The <strong>Global Injector<\/strong> (from v5.0.0) adds copy controls wherever matching elements appear. You define a <strong>CSS selector<\/strong> (for example <code>pre<\/code>, <code>code<\/code>, or <code>.promo-code<\/code>), pick a <strong>Button<\/strong>, <strong>Icon<\/strong>, or <strong>Cover<\/strong> preset, optionally set <strong>display conditions<\/strong>, and preview before saving. Open <strong>WordPress Dashboard \u2192 Copy to Clipboard \u2192 Global Injector<\/strong>.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20copy%20buttons%20to%20code%20snippets%3F\"><h3>How do I add copy buttons to code snippets?<\/h3><\/dt>\n<dd><p>Create a <strong>Global Injector<\/strong> rule or a classic <strong>CSS selector<\/strong> entry with selector <code>pre<\/code> or <code>code<\/code>, choose a style, save, and matching code blocks get a copy control (subject to your display conditions).<\/p><\/dd>\n<dt id=\"can%20i%20add%20copy%20buttons%20only%20on%20certain%20posts%20or%20pages%3F\"><h3>Can I add copy buttons only on certain posts or pages?<\/h3><\/dt>\n<dd><p>Yes. Use <strong>display conditions<\/strong> in Global Injector, or use <strong>shortcodes<\/strong> only where you need them (<code>[copy]<\/code> or <code>[ctc]<\/code>).<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20with%20elementor%3F\"><h3>Does this plugin work with Elementor?<\/h3><\/dt>\n<dd><p>Yes. With Elementor active, edit a page, search the panel for <strong>Copy<\/strong>, and use the dedicated widgets (copy button, code snippet, coupon, prompts, and more).<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20with%20gutenberg%3F\"><h3>Does this plugin work with Gutenberg?<\/h3><\/dt>\n<dd><p>Yes. Insert the bundled blocks (for example <strong>Copy Button<\/strong> and <strong>Copy Icon<\/strong>) from the block inserter.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20how%20the%20copy%20control%20looks%3F\"><h3>Can I customize how the copy control looks?<\/h3><\/dt>\n<dd><p>Yes\u2014styles, colors, placement, and labels are configurable in the admin. <strong>Global Injector<\/strong> includes a <strong>live preview<\/strong>. Deeper styling and analytics are part of <strong>PRO<\/strong>.<\/p><\/dd>\n<dt id=\"how%20can%20i%20control%20where%20copy%20buttons%20appear%3F\"><h3>How can I control where copy buttons appear?<\/h3><\/dt>\n<dd><p>Use <strong>display conditions<\/strong> in Global Injector to limit rules by post type, taxonomy, individual content, user role, and more so design and asset loading stay intentional.<\/p><\/dd>\n<dt id=\"is%20the%20plugin%20mobile%20friendly%3F\"><h3>Is the plugin mobile friendly?<\/h3><\/dt>\n<dd><p>Yes. Copy actions are built for phones and tablets as well as desktop.<\/p><\/dd>\n<dt id=\"does%20it%20work%20in%20all%20browsers%3F\"><h3>Does it work in all browsers?<\/h3><\/dt>\n<dd><p>Yes. Current versions of <strong>Chrome<\/strong>, <strong>Firefox<\/strong>, <strong>Safari<\/strong>, and <strong>Edge<\/strong> are supported.<\/p><\/dd>\n<dt id=\"will%20this%20plugin%20slow%20down%20my%20website%3F\"><h3>Will this plugin slow down my website?<\/h3><\/dt>\n<dd><p>It is built to stay lightweight. Combine <strong>display conditions<\/strong> with how you scope rules so scripts and styles load where copy UI is actually used.<\/p><\/dd>\n<dt id=\"can%20the%20plugin%20copy%20html%20as%20well%20as%20plain%20text%3F\"><h3>Can the plugin copy HTML as well as plain text?<\/h3><\/dt>\n<dd><p>Yes. Depending on settings and shortcode attributes, content can be copied as <strong>plain text<\/strong> or <strong>HTML<\/strong>, which helps with code snippets and formatted excerpts.<\/p><\/dd>\n<dt id=\"where%20can%20i%20read%20documentation%20or%20get%20support%3F\"><h3>Where can I read documentation or get support?<\/h3><\/dt>\n<dd><p>Guides: https:\/\/clipboard.agency\/doc\/ \u2014 Contact: https:\/\/clipboard.agency\/contact\/<\/p>\n\n<\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>5.5.2<\/h4>\n\n<ul>\n<li><strong>Fix: [copy] shortcode display with <code>content<\/code> attribute and inner markup<\/strong> \u2013 When the legacy <code>content<\/code> attribute sets the clipboard payload and the shortcode also wraps inner content (for example <code>[copy content=\"\/path\/to\/file\"]Install path[\/copy]<\/code>), the visible label now uses the inner content for <code>display<\/code> while <code>text<\/code> remains what gets copied. Previously the label could fall back to the same value as <code>content<\/code> and ignore the wrapped text.<\/li>\n<li><strong>Improvement: Compatibility to WordPress 6.9.4<\/strong> \u2013 The plugin is now compatible with WordPress 6.9.4 and the latest Gutenberg plugin.<\/li>\n<\/ul>\n\n<h4>5.5.1<\/h4>\n\n<ul>\n<li><strong>Fix: Highlight.js \/ code block copy formatting<\/strong> \u2013 Copy buttons added via Global Injector to <code>pre<\/code> and <code>code<\/code> blocks (including themes using Highlight.js, such as the setup on zanglikun.com) now preserve indentation and whitespace when copying, so Java \/ PHP \/ shell snippets paste exactly as shown instead of being flattened into a single left-aligned block. Thanks to Likun Zang for reporting the issue.<\/li>\n<li><strong>Fix: [copy] shortcode in table cells<\/strong> \u2013 <code>[copy]<\/code> inside table plugins (Data Tables Generator by Supsystic, wpDataTables) now works correctly. Scripts and styles load when the table shortcode is on the page, and copy controls work with cached or dynamically rendered table content. Thanks to <a href=\"https:\/\/wordpress.org\/support\/users\/jayceezay\/\">@jayceezay<\/a> for reporting. See: https:\/\/wordpress.org\/support\/topic\/copy-shortcode-in-table-cells-not-working-anymore\/<\/li>\n<li><strong>Fix: Thrive Architect HTML block integration<\/strong> \u2013 Copy buttons rendered inside a Thrive Architect HTML block (for example, custom blockquotes with <code>ctc-wrapper<\/code> markup) are now reliably detected and bound by the frontend script, so clicking the button correctly copies the content even when the HTML is pre-rendered or cached.<\/li>\n<li><strong>Improvement: Shortcode copy buttons (event delegation)<\/strong> \u2013 Copy buttons from <code>[copy]<\/code> shortcodes now use document-level event delegation, so buttons added dynamically (e.g. by table plugins after page load) remain clickable.<\/li>\n<li><strong>Improvement: Code \/ pre support in Global Injector<\/strong> \u2013 Global Injector rules targeting <code>pre<\/code> \/ <code>code<\/code> elements now integrate more safely with external highlighters and pre-rendered content, ensuring the \u201cCopy Anything to Clipboard\u201d behavior stays consistent without breaking existing theme or page builder output.<\/li>\n<\/ul>\n\n<h4>5.5.0<\/h4>\n\n<ul>\n<li><strong>New: Gutenberg block analytics (Pro)<\/strong> - Copy events from all Gutenberg copy blocks (Copy to Clipboard Icon, Copy Icon, and Copy Button) are now tracked as <code>source = 'gutenberg-block'<\/code> in the same analytics table. Pro Analytics dashboard shows a three-way source breakdown (Global Injector, Shortcodes, Gutenberg Blocks) and a Block by page view so you can see which pages drive the most Gutenberg block copy events.<\/li>\n<li><strong>Improvement: Gutenberg block tracking<\/strong> - Gutenberg copy block output includes <code>data-ctc-analytics<\/code> and <code>data-ctc-source=\"gutenberg-block\"<\/code>; frontend sends analytics to <code>POST \/ctc\/v1\/analytics\/events<\/code> after each copy (non-blocking). Block scripts and styles still load only when the relevant block is present on the page.<\/li>\n<\/ul>\n\n<h4>5.4.2<\/h4>\n\n<ul>\n<li><strong>Fix: Icon block frontend scripts only load when block is present<\/strong> - Icon block (Copy to Clipboard) styles and copy script are now enqueued only on pages that contain the Icon block, using <code>has_block( 'copy-the-code\/icon' )<\/code>. This avoids loading assets on every page and improves performance when the block is not used.<\/li>\n<\/ul>\n\n<h4>5.4.1<\/h4>\n\n<ul>\n<li><strong>New: Telemetry opt-in<\/strong> - Anonymized usage data can be shared to help improve the plugin. Opt-in is available from the welcome notice and via Settings \u2192 Dashboard; data is sent only when enabled and is cleaned on uninstall.<\/li>\n<li><strong>Improvement: Copy-by-source analytics and telemetry summary (Pro)<\/strong> - Analytics now includes a breakdown by copy source and a telemetry summary for opted-in usage insights.<\/li>\n<li><strong>Improvement: Uninstall cleanup<\/strong> - Telemetry and related options are removed when the plugin is uninstalled.<\/li>\n<li><strong>Fix: Freemius not loading<\/strong> - Resolved an issue where Freemius SDK could fail to load in some environments.<\/li>\n<\/ul>\n\n<h4>5.4.0<\/h4>\n\n<ul>\n<li><strong>New: Shortcode analytics + per-shortcode opt-out (Pro)<\/strong> - Shortcode-based copy events are now tracked as <code>source = 'shortcode'<\/code> with post and page context, alongside Global Injector events. You can disable tracking for specific shortcodes via an <code>analytics<\/code> attribute (for example, <code>[copy analytics=\"off\"]Code[\/copy]<\/code> still copies but does not record analytics for that instance).<\/li>\n<li><strong>New: Source breakdown &amp; shortcode-by-page (Pro)<\/strong> - The detailed Analytics endpoint now includes a Global Injector vs Shortcodes source breakdown and a shortcode-by-page view so you can see which pages and shortcodes drive the most copy events.<\/li>\n<li><strong>Improvement: Volume vs Prior card accuracy<\/strong> - The Volume vs Prior card now shows <code>\/ N prev<\/code> whenever previous-period data exists (including <code>0<\/code>), reserving <code>-- prev<\/code> only for truly missing data, and uses clearer trend labels for trending vs lagging periods.<\/li>\n<li><strong>Improvement: Free vs Pro previews in Analytics UI<\/strong> - Free users see a blurred preview for Pro-only source breakdown data so the UI is no longer misleading; Pro users see real counts, percentages, and growth.<\/li>\n<li><strong>Improvement: Version consistency &amp; cache-busting<\/strong> - Unified plugin version across the header, <code>CTC_VER<\/code> constant, core class, composer, and readme. Release tooling (<code>npm run version:check<\/code> \/ <code>version:set<\/code>) now fails on mismatches and keeps all version fields in sync, preventing stale assets and updater drift.<\/li>\n<li><strong>Fix: Coupon widget copy button label<\/strong> - The Elementor coupon widget now passes the correct config keys to the shared copy button helper, and the helper accepts both legacy (<code>copy_button_text<\/code>) and new (<code>button_text<\/code>) keys so the custom button text from widget settings always renders as expected.<\/li>\n<li><strong>Fix: Preserve zero-valued style settings<\/strong> - Global Injector rule meta now treats saved <code>'0'<\/code> values (e.g. blur, border width, padding) as valid instead of falling back to defaults, so zero-style configurations are applied consistently after saving.<\/li>\n<li><strong>Security: Safer external links<\/strong> - All plugin-generated links that open in a new tab (<code>target=\"_blank\"<\/code>) now include <code>rel=\"noopener noreferrer\"<\/code> to guard against reverse-tabnabbing and improve cross-window isolation.<\/li>\n<li><strong>Security: Pro analytics limited to admins<\/strong> - Pro analytics REST endpoints now require the <code>manage_options<\/code> capability, preventing non-admin users from accessing analytics data even if they obtain a valid REST nonce.<\/li>\n<li><strong>Security: Analytics abuse protections<\/strong> - The public analytics event endpoint (<code>POST \/ctc\/v1\/analytics\/events<\/code>) now enforces per-IP rate limiting and strict payload validation, returning <code>429<\/code> on abusive bursts and <code>400<\/code> for invalid event data to protect the <code>ctc_analytics<\/code> table.<\/li>\n<li><strong>Improvement: Analytics timezone normalization<\/strong> - Analytics events and query windows now consistently use UTC for <code>created_at<\/code> and date ranges, preventing shifted 24h\/7d\/30d boundaries on non-UTC sites.<\/li>\n<li><strong>Improvement: Analytics retention &amp; cleanup<\/strong> - Older analytics events beyond roughly 13 months are now pruned in small batches by a daily scheduled cleanup job (retention days and batch size are filterable), keeping the <code>ctc_analytics<\/code> table fast while still supporting long-range comparisons.<\/li>\n<li><strong>Fix: Emojis in code blocks now copied correctly<\/strong> - WordPress renders emojis as <code>&lt;img class=\"emoji\"&gt;<\/code> elements; the copy logic now converts these to their <code>alt<\/code> text so emojis are included in the copied content. <a href=\"https:\/\/wordpress.org\/support\/topic\/emojis-in-code-blocks-not-being-copied\/\">Thanks @jayceezay<\/a><\/li>\n<\/ul>\n\n<h4>5.3.1<\/h4>\n\n<ul>\n<li><strong>Fix: [copy] shortcode with formatted content<\/strong> - When the shortcode encloses formatted text (e.g. bold), the front end now displays the formatting and copies plain text to the clipboard. Display uses allowed HTML (filterable); copy uses plain text unless <code>copy-as=\"html\"<\/code>. <a href=\"https:\/\/wordpress.org\/support\/topic\/copy-shortcode-is-broken\/\">Thanks @jayceezay<\/a><\/li>\n<li><strong>New (developer):<\/strong> Filter <code>ctc\/shortcode\/display_allowed_html<\/code> to customize allowed HTML for shortcode display content (e.g. add custom markup support).<\/li>\n<\/ul>\n\n<h4>5.3.0<\/h4>\n\n<ul>\n<li><strong>New: Analytics (Pro)<\/strong> - See what gets copied. Copy tracking for Global Injector rules: track copy events per rule (rule ID, timestamp, success; no content stored). Analytics dashboard at Settings \u2192 Analytics: summary cards (total copies, active rules, top rule, % change), date range filter (24h, 7d, 30d, custom), activity chart, top rules table. Export CSV (Pro).<\/li>\n<li><strong>New: Activity column in Main Rule List<\/strong> - Copy count and 24h % change per rule. Free: count + blurred trend + Pro CTA; Pro: real trend. Link from Activity to Analytics filtered by rule.<\/li>\n<li><strong>New: REST API for analytics<\/strong> - <code>POST \/ctc\/v1\/analytics\/events<\/code> (public, for frontend tracking); GET endpoints and export for authenticated Pro users.<\/li>\n<li><strong>Improvement: Global Injector<\/strong> - Analytics option\/link in rule editor and dashboard to open Analytics page (filtered by rule when applicable).<\/li>\n<\/ul>\n\n<h4>5.2.0<\/h4>\n\n<ul>\n<li><strong>New: Copy As (Clipboard Type)<\/strong> - Choose what gets copied per rule: Text only, HTML, Text + HTML (default), Image (Pro), JSON (Pro), SVG (Pro). Global Injector Rule Editor includes \"Copy as\" section; shortcode and Gutenberg blocks support <code>copy-as<\/code> attribute. Uses CTC CopyEngine with Clipboard API; fallbacks for image (HTTPS\/CORS) and legacy browsers.<\/li>\n<li><strong>New: Image format for Copy As Image (Pro)<\/strong> - Choose PNG, JPEG, or WebP when copying as image. Pro adds Image format selector in Copy As section; free plugin provides <code>ctc.globalInjector.copyAs.after<\/code> hook for extensibility.<\/li>\n<li><strong>Improvement: Copy As extensibility<\/strong> - Free plugin now uses <code>ctc.globalInjector.copyAs.after<\/code> hook; Pro plugin renders Image format UI (PNG\/JPEG\/WebP) when Copy As is Image Blob. Follows Rank Math free\/Pro pattern.<\/li>\n<li><strong>Improvement: Pro extension points<\/strong> - Added <code>ctc\/global_injector\/rule_enum_fields<\/code>, <code>ctc\/global_injector\/rest_rule_data<\/code> filters; <code>ctc.globalInjector.fieldsToCompare<\/code> for unsaved-changes detection. Pro adds image_format via extend_meta_mapping, extend_admin_rule_data, extend_frontend_rule_data.<\/li>\n<li><strong>New: ImageFormatSection (Pro)<\/strong> - Pro component for Image format selection with ButtonGroup and docs link.<\/li>\n<li><strong>Fix: Image format persistence<\/strong> - Image format selection now persists after save and page refresh (load_rules and REST get_rule_data include image_format when Pro is active).<\/li>\n<\/ul>\n\n<h4>5.1.0<\/h4>\n\n<ul>\n<li><strong>New: Main Rule List<\/strong> - Custom rules UI at Settings \u2192 Global Injector (<code>page=ctc-rules<\/code>): table with Status toggle, Rule Name\/Target, Visual Style, Location; row actions Edit, Duplicate, Delete; search and status filter; empty state.<\/li>\n<li><strong>New: Dashboard (Home)<\/strong> - Copy to Clipboard dashboard at <code>page=ctc<\/code> (Settings \u2192 Copy to Clipboard).<\/li>\n<li><strong>New: Shared admin components<\/strong> - AdminHeader, ConfirmModal, Footer, Icons, ProBadge used by Dashboard, Main Rule List, and Rule Editor.<\/li>\n<li><strong>Improvement: Rule Editor<\/strong> - Header uses shared AdminHeader with back link to Global Rules list.<\/li>\n<li><strong>Improvement: Legacy CPT redirects<\/strong> - \"Add New\" and list edit links for <code>copy-to-clipboard<\/code> redirect to Global Injector.<\/li>\n<li><strong>Developer:<\/strong> <code>get_admin_rules()<\/code> API for admin list data; Main Rule List and Dashboard use React + Tailwind under <code>.ctc-admin-root<\/code>.<\/li>\n<li><strong>Improvement: Global Injector CSS from PHP<\/strong> - Global Injector styles (Button, Icon, Cover) are now output as minified inline CSS from PHP via the new Inline_CSS class. Only the styles and positions used by active rules are included; the <code>ctc\/global_injector\/inline_css<\/code> filter still applies to the final CSS.<\/li>\n<li><strong>Fix: Cover style fatal error<\/strong> - Added missing <code>get_global_injector_css()<\/code> method to the Cover style class so inline CSS builds correctly when Cover style is used (fixes \"Call to undefined method Cover::get_global_injector_css()\").<\/li>\n<li><strong>New: Admin bar quick-edit for Global Injector<\/strong> - When viewing a page where Global Injector rules apply, admins see a \"CTC\" item (with clipboard icon) in the admin bar. Sub-items list \"Edit: [Rule name]\" for each rule on the page and open the Global Injector settings with that rule selected.<\/li>\n<li><strong>Improvement: Global Injector URL support<\/strong> - The settings page now supports a <code>?rule=ID<\/code> query parameter to open the editor with a specific rule selected (e.g. from the admin bar or bookmarks). Added <code>get_selected_rule_id()<\/code> helper.<\/li>\n<li><strong>New: Shortcode <code>redirect<\/code> attribute<\/strong> - The <code>[copy]<\/code> shortcode now supports a <code>redirect<\/code> attribute for copy-then-redirect flows (e.g. <code>[copy redirect=\"https:\/\/store.com\"]CODE10[\/copy]<\/code>). After copying, the user is sent to the given URL. The existing <code>link<\/code> attribute remains supported for backward compatibility and has the same effect as <code>redirect<\/code>.<\/li>\n<li><strong>Fix: Shortcode display text with inner content<\/strong> - When both <code>text<\/code> and inner content are present (e.g. <code>[copy text=\"Hello World\"]Copy this[\/copy]<\/code>), the visible label now uses the inner content (\"Copy this\") and <code>text<\/code> is used only for the copy payload. Previously the label showed the <code>text<\/code> value.<\/li>\n<li><strong>Fix: Native preset CSS when using tag=\"a\"<\/strong> - Using <code>tag=\"a\"<\/code> for link-style copy buttons now correctly loads the native preset CSS so theme link styling is applied.<\/li>\n<li><strong>Fix: Shortcode <code>link<\/code> attribute redirect<\/strong> - The \"Copy &amp; Redirect\" \/ \"Combining Multiple Attributes\" flow now works: when <code>link=\"https:\/\/example.com\"<\/code> is set, the shortcode outputs <code>data-ctc-link<\/code> and the frontend opens the URL in a new tab after a successful copy (e.g. after \"Copied! Redirecting...\").<\/li>\n<li><strong>Improvement: Shortcode performance<\/strong> - Inline CSS for the shortcode is now output only for presets actually used on the page (inline, native, button, icon, cover), and the CSS is minified to reduce payload size.<\/li>\n<li><strong>Improvement: Global Injector rules sidebar<\/strong> - When opening the settings page with a specific rule (e.g. <code>?rule=318<\/code>), the selected rule is now scrolled to the top of the rules list within the sidebar only, without scrolling the whole page or moving the admin header out of view.<\/li>\n<li><strong>Fix: Giant copy icons in tables<\/strong> - Added explicit <code>width<\/code> and <code>height<\/code> attributes (24\u00d724) to all Global Injector SVG icons (Button, Icon, and Cover styles) so theme CSS cannot scale them unexpectedly inside table cells. <a href=\"https:\/\/wordpress.org\/support\/topic\/giant-icons-in-table\/\">Thanks @akashathu<\/a><\/li>\n<\/ul>\n\n<h4>5.0.1<\/h4>\n\n<p><strong>Bug fixes and support issues (post-5.0.0)<\/strong> \u2014 Thanks to the users who reported these on the <a href=\"https:\/\/wordpress.org\/support\/plugin\/copy-the-code\/\">support forum<\/a>.<\/p>\n\n<ul>\n<li><strong>Fix: 404 on ctc.js<\/strong> - Moved script to <code>assets\/frontend\/js\/lib\/ctc.js<\/code> (renamed from vendor\/ to avoid .gitignore conflict). Global Injector and shortcode enqueue the copy engine; fallbacks remain when script is unavailable. <a href=\"https:\/\/wordpress.org\/support\/topic\/404-js-file\/\">Thanks @contemplate<\/a><\/li>\n<li><strong>Fix: Giant copy icons in tables<\/strong> - Copy icons inside table cells no longer scale with table font-size. Added CSS constraints for shortcode and block copy icons when inside <code>table<\/code> elements.<\/li>\n<li><strong>Fix: Square brackets in shortcode content<\/strong> - Legacy shortcodes using <code>content=\"... &amp;#91;...&amp;#93; ...\"<\/code> now copy the correct <code>[<\/code> and <code>]<\/code> characters. The <code>content<\/code> attribute is decoded from HTML entities before use.<\/li>\n<li><strong>Fix: Shortcode script loading<\/strong> - Shortcode frontend script no longer depends on the removed vendor script; it loads independently with Clipboard API fallbacks.<\/li>\n<\/ul>\n\n<h4>5.0.0<\/h4>\n\n<p><strong>\ud83d\ude80 Major Release - Global Injector &amp; Complete Refactor<\/strong><\/p>\n\n<ul>\n<li><strong>New: Global Injector<\/strong> - Advanced copy button injection system with:\n\n<ul>\n<li>Display conditions to control where copy buttons appear<\/li>\n<li>Multiple style presets (Button, Icon, Cover)<\/li>\n<li>Live preview in the editor<\/li>\n<li>Performance-optimized asset loading<\/li>\n<\/ul><\/li>\n<li><strong>New: Refined Shortcode System<\/strong> - Enhanced <code>[copy]<\/code> \/ <code>[ctc]<\/code> shortcodes with improved attributes and flexibility.<\/li>\n<li><strong>New: Style Presets<\/strong> - Pre-built button, icon, and cover styles for quick setup.<\/li>\n<li><strong>Improvement: WordPress 6.7+ Compatibility<\/strong> - Fixed <code>_load_textdomain_just_in_time<\/code> notices with proper plugin initialization timing.<\/li>\n<li><strong>Improvement: Complete Asset Restructure<\/strong> - Reorganized frontend and admin assets for better performance.<\/li>\n<li><strong>Improvement: Gutenberg Block Enhancements<\/strong> - Fixed block registration and optimized editor asset loading.<\/li>\n<li><strong>Improvement: Freemius SDK Integration<\/strong> - Improved SDK initialization with proper hook timing.<\/li>\n<li><strong>Improvement: Code Quality<\/strong> - Major codebase refactoring with improved naming conventions and standards.<\/li>\n<li><strong>Fix: Block Editor Assets<\/strong> - Resolved \"invalid category\" warnings for Gutenberg blocks.<\/li>\n<li><strong>Fix: Frontend Script Loading<\/strong> - Fixed 404 errors for clipboard scripts after asset restructure.<\/li>\n<li><strong>Fix: Square Brackets in Shortcode<\/strong> - Fixed HTML entities (<code>&amp;#91;<\/code> <code>&amp;#93;<\/code>) not being decoded properly in <code>content<\/code> attribute. <a href=\"https:\/\/wordpress.org\/support\/topic\/issue-with-square-brackets\/\">Thanks @akashathu<\/a><\/li>\n<li><strong>Fix: CSS var() Double Dashes<\/strong> - Fixed WordPress converting <code>--<\/code> to en-dash inside CSS <code>var()<\/code> functions like <code>var(--wp--preset--color--bg)<\/code>. <a href=\"https:\/\/wordpress.org\/support\/topic\/converted-to-2\/\">Thanks @mikecargal<\/a><\/li>\n<li><strong>Fix: Legacy Shortcode <code>content<\/code> Attribute<\/strong> - Restored proper handling where <code>content<\/code> attribute contains the text to copy and <code>text<\/code> attribute is the display text.<\/li>\n<li><strong>New: Native Anchor Support<\/strong> - Added <code>tag=\"a\"<\/code> parameter to use theme's anchor styling instead of custom CTC styling.<\/li>\n<li><strong>New: Icon Toggle<\/strong> - Added <code>show-icon=\"no\"<\/code> parameter to hide the copy icon when not needed.<\/li>\n<li><strong>Developer: New Architecture<\/strong> - Modular class-based architecture for better extensibility.<\/li>\n<\/ul>\n\n<h4>4.1.2<\/h4>\n\n<ul>\n<li>Fixed: iOS 26 compatibility issue by migrating from deprecated <code>document.execCommand('copy')<\/code> to modern Clipboard API (<code>navigator.clipboard.writeText()<\/code>).<\/li>\n<li>Improvement: Added fallback support for older browsers that don't support the Clipboard API.<\/li>\n<li>Improvement: Enhanced clipboard functionality across all copy methods (CSS selector, shortcode, Elementor widgets, and Gutenberg blocks).<\/li>\n<\/ul>\n\n<h4>4.1.1<\/h4>\n\n<ul>\n<li>Fix: Dependency build failed.<\/li>\n<\/ul>\n\n<h4>4.1.0<\/h4>\n\n<ul>\n<li>Improvement: Updated Freemius SDK library with version 2.13.0.<\/li>\n<li>Improvement: Updated plugin metadata for compatibility with WordPress 6.8.<\/li>\n<li>Improvement: Enhanced readme content, tags, and FAQ for better search visibility.<\/li>\n<\/ul>\n\n<h4>4.0.5<\/h4>\n\n<ul>\n<li>Improvement: Updated Freemius SDK library with version 2.11.0.<\/li>\n<li>Improvement: Compatibility to WordPress 6.7.2.<\/li>\n<\/ul>\n\n<h4>4.0.4<\/h4>\n\n<ul>\n<li>Fixed: Disallow to add script for the contributor level user in the shortcode.<\/li>\n<li>Improvement: Updated Freemius SDK library with version 2.9.0.<\/li>\n<li>Improvement: Compatibility to WordPress 6.7.1.<\/li>\n<\/ul>\n\n<h4>4.0.3<\/h4>\n\n<ul>\n<li>Hot fix: The dependency not works for post types.<\/li>\n<\/ul>\n\n<h4>4.0.2<\/h4>\n\n<ul>\n<li>Fix: The js dependency not works for the shortcode.<\/li>\n<\/ul>\n\n<h4>4.0.0<\/h4>\n\n<ul>\n<li>New: Added the Gutenberg block \"Term Title\".<\/li>\n<li>New: Added the Gutenberg block \"Social Share\".<\/li>\n<li>New: Added the Gutenberg block \"Copy Button\".<\/li>\n<li>New: Added the Gutenberg block \"Copy Icon\".<\/li>\n<li>Improvement: Updated Freemius SDK library with version 2.7.4.<\/li>\n<li>Improvement: Compatibility to WordPress 6.6.1.<\/li>\n<\/ul>\n\n<h4>3.8.3<\/h4>\n\n<ul>\n<li>Improvement: Updated the recurring cron job registration logic.<\/li>\n<\/ul>\n\n<h4>3.8.2<\/h4>\n\n<ul>\n<li>Fixed: Elementor copy button not works due to missing dependency.<\/li>\n<\/ul>\n\n<h4>3.8.1<\/h4>\n\n<ul>\n<li>Fixed: The copy animation not works for the shortcode.<\/li>\n<li>Improvement: Compatibility to WordPress 6.5.3.<\/li>\n<\/ul>\n\n<h4>3.8.0<\/h4>\n\n<ul>\n<li>New: Added display conditions for the copy to clipboard to load the assets only on selected pages.<\/li>\n<li>Improvement: Fixed the copy icon Gutenberg block title issue.<\/li>\n<li>Improvement: Loading the Gutenberg block assets only on the block used pages.<\/li>\n<li>Improvement: Added default copied button text.<\/li>\n<li>Improvement: Compatibility to WordPress 6.5.2.<\/li>\n<\/ul>\n\n<h4>3.7.0<\/h4>\n\n<ul>\n<li>New: Added the copy icon Gutenberg block.<\/li>\n<\/ul>\n\n<h4>3.6.0<\/h4>\n\n<ul>\n<li>New: Added the target selector support for the copy content in the Elementor widget.<\/li>\n<li>Improvement: Added to support to copy the markup content from the Copy Icon Elementor widget.<\/li>\n<\/ul>\n\n<h4>3.5.2<\/h4>\n\n<ul>\n<li>Improvement: Added the dynamic content support for email, phone, and address Elementor widgets.<\/li>\n<li>Improvement: Compatibility to WordPress 6.4.3.<\/li>\n<\/ul>\n\n<h4>3.5.1<\/h4>\n\n<ul>\n<li>Improvement: Added the background image support for all the Elementor widgets.<\/li>\n<li>Improvement: Updated Freemius SDK library with version 2.6.2.<\/li>\n<\/ul>\n\n<h4>3.5.0<\/h4>\n\n<ul>\n<li>New: Added the \"Contact Information\" Elementor widget.<\/li>\n<li>Improvement: Compatibility to WordPress 6.4.2.<\/li>\n<\/ul>\n\n<h4>3.4.3<\/h4>\n\n<ul>\n<li>Fix: The shortcode copy the display text instead of the content.<\/li>\n<\/ul>\n\n<h4>3.4.2<\/h4>\n\n<ul>\n<li>Improvement: Added the shortcode support for the Elementor widget.<\/li>\n<li>Improvement: Added the missing table widget in the Elementor category.<\/li>\n<\/ul>\n\n<h4>3.4.1<\/h4>\n\n<ul>\n<li>Fix: The button customization is not working in the dashboard screen.<\/li>\n<\/ul>\n\n<h4>3.4.0<\/h4>\n\n<ul>\n<li>New: Added table Elementor widget to display content in horizontal, or vertical table and allow to copy the content.<\/li>\n<\/ul>\n\n<h4>3.3.0<\/h4>\n\n<ul>\n<li>New: Added button styling support for Elementor widget Copy Icon.<\/li>\n<li>New: Added button styling support for Elementor widget Copy Button.<\/li>\n<li>New: Added button styling support for Elementor widget Email Sample.<\/li>\n<li>New: Added button styling support for Elementor widget Email Address.<\/li>\n<li>New: Added button styling support for Elementor widget Phone Number.<\/li>\n<li>New: Added button styling support for Elementor widget Blockquote.<\/li>\n<li>New: Added button styling support for Elementor widget Code Snippet.<\/li>\n<li>New: Added button styling support for Elementor widget Message.<\/li>\n<li>New: Added button styling support for Elementor widget Deal.<\/li>\n<li>New: Added button styling support for Elementor widget Coupon.<\/li>\n<li>New: Added button styling support for Elementor widget AI Prompt Generator.<\/li>\n<li>Improvement: Updated Freemius SDK version 2.6.0.<\/li>\n<\/ul>\n\n<h4>3.2.1<\/h4>\n\n<ul>\n<li>Improvement: Improved the Elementor \"Coupon Code\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Deal\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Email Address\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Email Sample\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Message\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Phone Number\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Shayari\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"SMS\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Wish\" widget controls and structure.<\/li>\n<\/ul>\n\n<h4>3.2.0<\/h4>\n\n<ul>\n<li>New: Added the Elementor widget category \"Copy Anything to Clipboard\".<\/li>\n<li>Improvement: Compatibility to WordPress 6.4.1.<\/li>\n<li>Improvement: Improved the Elementor \"AI Prompt Generator\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Blockquote\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Code Snippet\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Copy to Clipboard Button\" widget controls and structure.<\/li>\n<li>Improvement: Improved the Elementor \"Copy to Clipboard Icon\" widget controls and structure.<\/li>\n<\/ul>\n\n<h4>3.1.0<\/h4>\n\n<ul>\n<li>New: Added inline-style copy shortcode for paragraph-level snippets (unified under <code>[copy]<\/code> in v5+).<\/li>\n<li>New: Added Elementor widget Copy Icon.<\/li>\n<li>New: Added Elementor widget Copy Button.<\/li>\n<li>New: Added Elementor widget Email Sample.<\/li>\n<li>New: Added Elementor widget Email Address.<\/li>\n<li>New: Added Elementor widget Phone Number.<\/li>\n<li>New: Added Elementor widget Blockquote.<\/li>\n<li>New: Added Elementor widget Code Snippet.<\/li>\n<li>New: Added Elementor widget Message.<\/li>\n<li>New: Added Elementor widget Deal.<\/li>\n<li>New: Added Elementor widget Coupon.<\/li>\n<li>New: Added Elementor widget AI Prompt Generator.<\/li>\n<\/ul>\n\n<h4>3.0.0<\/h4>\n\n<ul>\n<li>New: Improve the dashboard UI with the new design.<\/li>\n<li>Improvement: Added the support to edit the existing copy to clipboard post.<\/li>\n<li>Improvement: Compatibility to WordPress 6.3.2.<\/li>\n<li>Improvement: Updated Freemius SDK version 2.5.12.<\/li>\n<\/ul>\n\n<h4>2.6.5<\/h4>\n\n<ul>\n<li>Improvement: Compatibility to WordPress 6.3.1.<\/li>\n<li>Improvement: Address a reflected Cross-Site Scripting vulnerability from <code>icon-color<\/code> shortcode parameter.<\/li>\n<\/ul>\n\n<h4>2.6.4<\/h4>\n\n<ul>\n<li>Improvement: Updated Freemius SDK version 2.5.10 to address a Reflected Cross-Site Scripting vulnerability via fs_request_get.<\/li>\n<\/ul>\n\n<h4>2.6.3<\/h4>\n\n<ul>\n<li>Improvement: Added the shortcode attribute <code>color<\/code> to set the custom color for the text. E.g. <code>[copy content=\"Custom Text..\" color=\"#2dcd78\"]Copy me![\/copy]<\/code><\/li>\n<li>Improvement: Added the shortcode attribute <code>icon-color<\/code> to set the custom color for the icon. E.g. <code>[copy content=\"Custom Text..\" style=\"icon\" icon-color=\"#9437f6\"][\/copy]<\/code><\/li>\n<li>Improvement: Added the shortcode attribute <code>style<\/code> to show the icon. E.g. <code>[copy content=\"Custom Text..\" style=\"icon\"][\/copy]<\/code><\/li>\n<\/ul>\n\n<h4>2.6.2<\/h4>\n\n<ul>\n<li>Improvement: Compatibility to WordPress 6.1.1.<\/li>\n<li>Improvement: Updated Freemius SDK wit version 2.5.3.<\/li>\n<li>Improvement: Added the support to copy emojis from the content into the clipboard.<\/li>\n<\/ul>\n\n<h4>2.6.1<\/h4>\n\n<ul>\n<li>Improvement: Avoided the button copy to clipboard for Google Docs and Email format.<\/li>\n<li>Improvement: Avoided the \"Copy\" text from the clipboard.<\/li>\n<\/ul>\n\n<h4>2.6.0<\/h4>\n\n<ul>\n<li>New: Added the Copy Format setting to copy the content for Google Docs or Email.<\/li>\n<li>Improvement: Added filter <code>copy_the_code_shortcode_atts<\/code> for shortcode to redirect the user to another page after copying the content to the clipboard.<\/li>\n<li>Improvement: Added the support to Trim Lines with filter <code>copy_the_code_localize_vars<\/code>.<\/li>\n<li>Improvement: Added translation support for pt_BR language.<\/li>\n<\/ul>\n\n<h4>2.5.0<\/h4>\n\n<ul>\n<li><p>New: Added a link to easily upgrade to the premium version which was recently not easily visible.<\/p><\/li>\n<li><p>Improvement: Improve the default button style.<\/p><\/li>\n<li>Improvement: Improve the welcome message by adding the plugin name. Thanks @Andre<\/li>\n<\/ul>\n\n<h4>2.4.2<\/h4>\n\n<ul>\n<li>Fix: The message \"You are just one step away..\" is not disappearing after clicking on button. Thanks @MingHong<\/li>\n<\/ul>\n\n<h4>2.4.1<\/h4>\n\n<ul>\n<li>Improvement: Added the sub-menus page links into the post type screen.<\/li>\n<li>Improvement: Removed the sub-menus Dashboard, Contact Us, Upgrade, and Support Forum.<\/li>\n<\/ul>\n\n<h4>2.4.0<\/h4>\n\n<ul>\n<li>New: Integrated the Freemius library for automatic updates, upgrade and for quick support.<\/li>\n<li>Improvement: Add new dashboard admin page for Copy Anything to Clipboard.<\/li>\n<li>Improvement: Deprecated the Shortcode admin page which is no longer used.<\/li>\n<\/ul>\n\n<h4>2.3.5<\/h4>\n\n<ul>\n<li>Improvement: UI improvements in the shortcode information admin page.<\/li>\n<li>Improvement: Added the title tag support for the shortcode. So, Whenever the user hovers on shortcode text then it'll see the title.<\/li>\n<li>Improvement: Avoid the remove spaces support by setting false values to the parameter remove_spaces. Use filter from code snippet  https:\/\/gist.github.com\/7c086cdf0837f5864596945086c603c8<\/li>\n<\/ul>\n\n<h4>2.3.4<\/h4>\n\n<ul>\n<li>Improvement: Keep the welcome message only for first time user activate.<\/li>\n<\/ul>\n\n<h4>2.3.3<\/h4>\n\n<ul>\n<li>Improvement: Added a welcome message to the user for smooth plugin onboarding.<\/li>\n<\/ul>\n\n<h4>2.3.2<\/h4>\n\n<ul>\n<li>Improvement: Improve the code with PHPCS fixes.<\/li>\n<\/ul>\n\n<h4>2.3.1<\/h4>\n\n<ul>\n<li>Improvement: Keep the tab spaces while copy to clipboard. Thanks @marius84<\/li>\n<li>Improvement: Users can now share non-personal usage data to help us test and develop better products. <\/li>\n<\/ul>\n\n<h4>2.3.0<\/h4>\n\n<ul>\n<li>New: Added support to redirect user after copy to clipboard. Thanks @zecke Read more https:\/\/wp.me\/P4Ams0-aAq<\/li>\n<\/ul>\n\n<h4>2.2.2<\/h4>\n\n<ul>\n<li>Improvement: Getting multiple white spaces in Gutenberg editor.<\/li>\n<li>Fix: The add new link was wrong which navigate to invalid page.<\/li>\n<\/ul>\n\n<h4>2.2.1<\/h4>\n\n<ul>\n<li>Improvement: Move the parent menus as submenu in settings menu.<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>New - Added shortcode [copy] to copy the content. E.g. [copy]12345[\/copy]. Read more at https:\/\/clipboard.agency\/doc\/<\/li>\n<\/ul>\n\n<h4>2.1.1<\/h4>\n\n<ul>\n<li>Improvement - Compatibility to WordPress 5.7.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>New: Added filter <code>copy_the_code_localize_vars<\/code> to allow to copy the content as HTMl instead of text.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Tweak: Create a new post copy to clipboard post depends on the old user settings.<\/li>\n<li>Deprecated: Removed the filter <code>copy_the_code_enabled<\/code> which is no more useful.<\/li>\n<li>Deprecated: Removed the option <code>Copy the content<\/code> which is no more useful. Will add the support though filter if required.<\/li>\n<li>New: Added custom post type support to add multiple copy to clipboard buttons with different selectors and styles.<\/li>\n<li>New: Improve the UI with live preview.<\/li>\n<li>New: Added the new <code>SVG Icon<\/code> button style to show the SVG icon instead of button.<\/li>\n<li>New: Added inside and outside position support for the new style SVG Icon.<\/li>\n<li>New: Added the new <code>Cover<\/code> style to copy the small element in which we could not add the copy button. Such as Emoji and Symbols.<\/li>\n<\/ul>\n\n<h4>1.8.0<\/h4>\n\n<ul>\n<li>New: Set the <code>Copy Content As<\/code> default option with <code>text<\/code>.<\/li>\n<li>Improvements: Converted the <code>&lt;br&gt;<\/code> tags into the new line if the option \"Copy Content As\" selected as <code>Text<\/code>.<\/li>\n<li>Improvements: Converted the <code>&lt;div&gt;<\/code> tags into the new line if the option \"Copy Content As\" selected as <code>Text<\/code>.<\/li>\n<li>Improvements: Converted the <code>&lt;p&gt;<\/code> tags into the new line if the option \"Copy Content As\" selected as <code>Text<\/code>.<\/li>\n<li>Improvements: Converted the <code>&lt;li&gt;<\/code> tags into the new line if the option \"Copy Content As\" selected as <code>Text<\/code>.<\/li>\n<li>Improvements: Remove the white spaces and trim the content if the option \"Copy Content As\" selected as <code>Text<\/code>.<\/li>\n<li>Fix: Copy the content as text works different on Chrome, Firefox and Internet Explorer browsers.<\/li>\n<\/ul>\n\n<h4>1.7.5<\/h4>\n\n<ul>\n<li>Fix: The <code>&lt;br&gt;<\/code> tag converted into the next line. Select the <code>Text<\/code> from option <code>Copy Content As<\/code>. Reported by Konrad.<\/li>\n<li>Fix: Single level selector copies the selector in the clipboard. Reported by Seb.<\/li>\n<\/ul>\n\n<h4>1.7.4<\/h4>\n\n<ul>\n<li>Fix: Nested selectors was not working due to mismatch the copy button position.<\/li>\n<\/ul>\n\n<h4>1.7.3<\/h4>\n\n<ul>\n<li>Fix: The <code>&lt;br&gt;<\/code> tags was not copied as new line.  Reported by @psanger.<\/li>\n<\/ul>\n\n<h4>1.7.2<\/h4>\n\n<ul>\n<li>Improvement: Removed unwanted code.<\/li>\n<\/ul>\n\n<h4>1.7.1<\/h4>\n\n<ul>\n<li>Improvement: Updated Freemius SDK library with version 2.3.2.<\/li>\n<li>Improvement: Added the latest new section.<\/li>\n<li>Fix: The submit button is not visible form the settings page. Reported by Nicolas Tizio<\/li>\n<\/ul>\n\n<h4>1.7.0<\/h4>\n\n<ul>\n<li>New: Added General &amp; Style tabs.<\/li>\n<\/ul>\n\n<h4>1.6.1<\/h4>\n\n<ul>\n<li>Improvement: Added WordPress 5.4 compatibility.<\/li>\n<\/ul>\n\n<h4>1.6.0<\/h4>\n\n<ul>\n<li>New: Added filter <code>copy_the_code_default_page_settings<\/code> to change the default page settings.<\/li>\n<li>New: Added filter <code>copy_the_code_page_settings<\/code> to change the page settings.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>New: Added option 'Button Text' to set the default button text. Default 'Copy'.<\/li>\n<li>New: Added option 'Button Copy Text' to set the button text after click on copy. Default 'Copied!'.<\/li>\n<li>New: Added option 'Button Title' to set the default button title which appear on hover on button. Default 'Copy to Clipboard'.<\/li>\n<li>New: Added option 'Button Position' to set the button position. Inside or outside the selector. Default 'inside'.<\/li>\n<li>Improvement: Added support for Internet Explorer devices. Reported by @rambo3000<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Fix: Added support for IOS devices. Reported by @radiocure1<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>New: Added option 'Copy Content As' to copy the content as either HTML or Text. <\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Improvement: Updated the strings and compatibility for WordPress 5.0.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>New: Added support, contact links.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>New: Added settings page for customizing the plugin. Added option <code>selector<\/code> to set the JS selector. Default its <code>&lt;pre&gt;<\/code> html tag.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Fix: Removed <code>Copy<\/code> button markup from the copied content from the clipboard.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Copy Anything to Clipboard is the #1 WordPress copy-to-clipboard plugin trusted by 10,000+ active websites with 352,151+ downloads \ud83d\ude80.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/86485","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=86485"}],"author":[{"embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/clipboardagency"}],"wp:attachment":[{"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=86485"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=86485"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=86485"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=86485"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=86485"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ka.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=86485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}