{"id":23619,"date":"2026-07-31T11:34:52","date_gmt":"2026-07-31T09:34:52","guid":{"rendered":"https:\/\/www.transparentedge.eu\/en\/blog\/"},"modified":"2026-07-31T11:34:53","modified_gmt":"2026-07-31T09:34:53","slug":"cdn-plugin-for-magento-2","status":"publish","type":"post","link":"https:\/\/www.transparentedge.eu\/en\/blog\/cdn-plugin-for-magento-2\/","title":{"rendered":"CDN plugin for Magento 2"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Magento is a Ferrari with square wheels. Plenty of power under the bonnet (catalogue, checkout, EAV, indexing\u2026 the whole arsenal), but the moment you put your foot down in production, TTFB reminds you the wheels aren&#8217;t round. A typical installation without a CDN sits somewhere around 800-2000 ms TTFB. You can bolt on a local Varnish and it helps, sure, but then you&#8217;re stuck hand-writing VCL, maintaining it, and the content still never leaves your origin server \u2014 so if your customer is in Buenos Aires, they&#8217;ll notice. In today&#8217;s post we look at how we built a CDN plugin to speed up TTFB on Magento 2. Let&#8217;s get into it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why build a CDN plugin for Magento 2<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Most CDNs don&#8217;t solve the problem at the root: either they expect you to edit the setup yourself, or they simply don&#8217;t speak Magento&#8217;s language. When an admin saves a product, the CDN has no idea. It keeps serving the old version until the TTL expires or someone manually purges the entire site \u2014 with the side effect of throwing away the cache for the 9,999 pages that hadn&#8217;t even changed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So we did what people who really can&#8217;t stand something tend to do: we fixed it ourselves. The result is Transparent Edge&#8217;s official plugin for Magento 2 \u2014 open source, MIT licence, built by people who&#8217;ve spent as much time staring at Varnish logs as debugging Magento observers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What it actually does (and what it doesn&#8217;t force you to do)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The plugin hooks into Magento&#8217;s lifecycle (product, category, CMS, block, price, reindex) and translates every change into surgical invalidations sent to the CDN. No touching VCL. No local Varnish. No need for the store admin to learn what a ban is. You install it, fill in four connection details, and the plugin starts talking to the CDN on your behalf.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Installation is via <code>composer require<\/code> or a manual copy of the module \u2014 no odd scripts, no exotic dependencies. The plugin&#8217;s GitHub repository has the exact package name and detailed steps.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"579\" src=\"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-1024x579.png\" alt=\"\" class=\"wp-image-23616\" srcset=\"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-1024x579.png 1024w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-300x170.png 300w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-768x434.png 768w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-1536x869.png 1536w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Once installed, you&#8217;ve got 46 PHP classes with PSR-4 and strict types quietly working away in the background, spread across six observers and three plugins (AOP interceptors) that hook into Magento&#8217;s events without the core ever knowing they&#8217;re there.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Three performance improvements the plugin brings<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">The crown jewel: surgical invalidation with surrogate keys<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is where the plugin stops being just another cache connector and becomes something more. Every HTTP response from Magento goes out with a Surrogate-Keys header tagging the content:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Surrogate-Keys: product-123 category-5 block-footer te-all<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">When the admin saves product 123, the plugin doesn&#8217;t say &#8220;purge everything.&#8221; It says &#8220;purge product-123&#8221; and that&#8217;s it. The remaining 9,999 catalogue pages stay exactly where they were: warm, served from the edge, never touching origin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s the difference between a surgeon and a hammer. The hammer solves the problem too, but at the cost of everything around it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And this isn&#8217;t a marketing promise. In tests on a 181-product catalogue, a single product invalidation generated 1,463 tags processed in 15 batches of 100, in under 2 seconds. Surgical, measured in milliseconds.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To keep this from spiralling, there&#8217;s an automatic threshold: if an operation accumulates more than 5,000 tags, the plugin decides on its own that fine-grained invalidation is no longer worth it and fires a full ban instead. And there are 28 filtered tag prefixes (<code>paycomet_<\/code>, <code>payment_<\/code>, <code>token_<\/code>, <code>quote_<\/code>\u2026) so the CDN is never sent data that should never be cached in the first place.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Speculation Rules: the page loads before you even click<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is the part we most enjoy showing off full-screen. The plugin automatically generates a Speculation Rules JSON (supported since Chrome 109, Edge 120 and Safari 18) that tells the browser: &#8220;when the user hovers over this link, start downloading the page now, before they even click.&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In Balanced mode, hovering over a product triggers the preload. By the time the user actually clicks, the page is already there. Instant loading, a native-app feel, zero extra JavaScript on the frontend.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In version 2.0.0 this has become contextual by page type:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On a PLP (category listing), the first three visible products are prerendered. On a PDP (product page), the parent category and related products are prefetched. On the homepage, the main menu categories are prerendered.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The nerdy detail: this JSON is served from its own endpoint (<code>\/transparentedge\/speculationRules\/index<\/code>) with <code>Content-Type: application\/speculationrules+json<\/code> \u2014 and here&#8217;s the inception moment \u2014 it&#8217;s cached on the CDN itself, with its own Surrogate-Key. In other words, the CDN caches the instructions that tell the browser to use the CDN faster. Like The Matrix, but with fewer bullets and more HTTP headers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For safety, there are more than 40 exclusions configured out of the box: checkout, customer, payment gateways, REST, GraphQL. No accidentally preloading a page containing sensitive customer data.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">i3: WebP, AVIF, watermarks, custom captions \u2014 all without touching a single file<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Let&#8217;s cover the most common use case, though you can do a lot more. Catalogue images are converted to WebP or AVIF on the fly, at the edge, depending on what the requesting browser supports. No copies are generated on your server, URLs don&#8217;t change, there&#8217;s no SEO impact, and you don&#8217;t need any new PHP extensions. The original image stays exactly as it is; the transformation happens at the moment it&#8217;s served.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Technically, the plugin adds the header <code>TCDN-i3-transform: auto_webp:85%<\/code> in the VCL, and format negotiation happens automatically based on the browser&#8217;s <code>Accept<\/code> header. You don&#8217;t choose the format \u2014 each visitor&#8217;s browser does.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tools for developers and sysadmins<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">WPO: hints the browser thanks you for, without even asking<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Beyond images, the plugin analyses every HTML response and automatically adds:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>&lt;link rel=\"preload\"&gt;<\/code> for the LCP image, critical CSS and fonts (between 3 and 5 hints depending on the page) <code>&lt;link rel=\"dns-prefetch\"&gt;<\/code> for detected external domains (up to 8) <code>loading=\"lazy\"<\/code> on iframes and videos<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">All of this without JavaScript, without touching your theme, without getting anywhere near RequireJS. The HTML leaves Magento, passes through the plugin, and reaches the browser already optimised.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Redis, in one click (with a safety net)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re still running file-based cache in 2026, this panel is for you. The plugin automatically detects Redis \u2014 localhost, Docker, Unix sockets \u2014 shows you its version and memory usage, and enables Object Cache, FPC and Sessions with a single click. Before touching anything, it automatically backs up your <code>env.php<\/code>, so if anything goes wrong you have instant rollback.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The security audit covered this module specifically: SSRF protection in the Redis Manager, the client secret encrypted in the database, the admin cookie flagged Secure, and internal headers stripped in production so nothing is exposed that shouldn&#8217;t be.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">VCL Generator: copy, paste, it works<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve never written a line of VCL, don&#8217;t worry. The plugin generates the complete VCL for the Transparent Edge dashboard: admin bypass, cookie stripping on static assets, removal of tracking parameters (UTM, gclid, fbclid), i3 rules for images, and the correct TTLs for each content type.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Copy it, paste it into the dashboard, deploy. Done.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sub vcl_recv {\nif (req.url ~ \"^\/admin\") {\nreturn (pass);\n}\n# strip tracking parameters\nset req.url = regsuball(req.url, \"(&#91;?&amp;])(utm_&#91;a-z]+|gclid|fbclid)=&#91;^&amp;]+\", \"\\1\");\nset req.url = regsub(req.url, \"&#91;?&amp;]$\", \"\");\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The snippet above is purely illustrative of the type of rules covered \u2014 the actual VCL is generated by the plugin according to your configuration.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Import mode: 700,000 products without blinking<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve ever run a bulk import or a full reindex, you know what happens when your CDN integration isn&#8217;t built for it: thousands of individual invalidations, a saturated API, and a long while staring at the terminal with a resigned look on your face.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The Magento 2 cache plugin automatically detects CLI context (imports, reindex) and suspends individual invalidations for the duration of the process. Once it&#8217;s finished, it fires a single, total ban. No 700,000 API calls, no overhead, no hammering the CDN.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Observability: health check and dashboard<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>GET \/transparentedge\/status\/health<\/code> returns a JSON with the plugin&#8217;s full status (CDN connection, active features, cache backend, version), designed to plug into Datadog, Kubernetes liveness probes, or whatever monitoring system you already have running.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And for day-to-day use, there&#8217;s a widget on the Magento admin homepage showing CDN status, active features, and quick links to configuration, purge and the Transparent Edge dashboard. One glance tells you whether everything&#8217;s working, with no need to dig into any submenu.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to start using the CDN plugin for Magento 2<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Install it from the plugin&#8217;s GitHub repository: <a href=\"https:\/\/github.com\/TransparentEdge\/magento-transparentedge-cache\">https:\/\/github.com\/TransparentEdge\/magento-transparentedge-cache<\/a> Check the configuration documentation If you&#8217;re already a Transparent Edge customer, activate it from your dashboard If you have technical questions or want a demo before putting it into production, write to us at <a href=\"mailto:help+cdn@transparentedge.eu\">help+cdn@transparentedge.eu<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s it. Your Magento now has the engine. This is the round tyres.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"924\" height=\"603\" src=\"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-2.png\" alt=\"Pantallazo instalaci\u00f3n completa plugin cach\u00e9 Magento 2\" class=\"wp-image-23620\" srcset=\"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-2.png 924w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-2-300x196.png 300w, https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/07\/image-2-768x501.png 768w\" sizes=\"auto, (max-width: 924px) 100vw, 924px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.linkedin.com\/in\/odorrego\/\" data-type=\"link\" data-id=\"https:\/\/www.linkedin.com\/in\/odorrego\/\" target=\"_blank\" rel=\"noreferrer noopener\">O<\/a><a href=\"https:\/\/www.linkedin.com\/in\/odorrego\/\" target=\"_blank\" rel=\"noreferrer noopener\">scar Dorrego<\/a> is Presales at Transparent Edge.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>Psychologist by training, computer scientist by hobby, pre-sales by profession, new romantic at heart. He does so many things that he doesn&#8217;t even remember what he really does. More left hand than Nadal. Living between business and technology allows him to have half the joys and twice the worries, but it is impossible to make a dent in the spirit of our favorite snake charmer.<\/em><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Magento is a Ferrari with square wheels. Plenty of power under the bonnet (catalogue, checkout, EAV, indexing\u2026 the whole arsenal), [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":22836,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[152,159],"tags":[],"class_list":["post-23619","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cdn-es-en","category-alto-rendimiento-en"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>CDN plugin for Magento 2 - Transparent Edge<\/title>\n<meta name=\"description\" content=\"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\/AVIF, and preloads pages using Speculation Rules. Install it for free.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CDN plugin for Magento 2 - Transparent Edge\" \/>\n<meta property=\"og:description\" content=\"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\/AVIF, and preloads pages using Speculation Rules. Install it for free.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Transparent Edge\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-31T09:34:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-31T09:34:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2063\" \/>\n\t<meta property=\"og:image:height\" content=\"1377\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Oscar odorrego\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@tedgeservices\" \/>\n<meta name=\"twitter:site\" content=\"@tedgeservices\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/\"},\"author\":{\"name\":\"Oscar odorrego\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#\\\/schema\\\/person\\\/fcdb445ff7e6874803003aeac88c713d\"},\"headline\":\"CDN plugin for Magento 2\",\"datePublished\":\"2026-07-31T09:34:52+00:00\",\"dateModified\":\"2026-07-31T09:34:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/\"},\"wordCount\":1511,\"publisher\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/TE_blog_Los_invisibles_CDN.jpg\",\"articleSection\":[\"cdn\",\"alto rendimiento\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/\",\"url\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/\",\"name\":\"CDN plugin for Magento 2 - Transparent Edge\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/TE_blog_Los_invisibles_CDN.jpg\",\"datePublished\":\"2026-07-31T09:34:52+00:00\",\"dateModified\":\"2026-07-31T09:34:53+00:00\",\"description\":\"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\\\/AVIF, and preloads pages using Speculation Rules. Install it for free.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/TE_blog_Los_invisibles_CDN.jpg\",\"contentUrl\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/TE_blog_Los_invisibles_CDN.jpg\",\"width\":2063,\"height\":1377},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/blog\\\/cdn-plugin-for-magento-2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/www.transparentedge.eu\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CDN plugin for Magento 2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#website\",\"url\":\"https:\\\/\\\/www.transparentedge.eu\\\/\",\"name\":\"Transparent Edge\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#organization\"},\"alternateName\":\"Transparent Edge\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.transparentedge.eu\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#organization\",\"name\":\"Transparent Edge Services\",\"alternateName\":\"Transparent Edge\",\"url\":\"https:\\\/\\\/www.transparentedge.eu\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logotipo-cuadrado.jpg\",\"contentUrl\":\"https:\\\/\\\/www.transparentedge.eu\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logotipo-cuadrado.jpg\",\"width\":1328,\"height\":1180,\"caption\":\"Transparent Edge Services\"},\"image\":{\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/tedgeservices\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/transparent-edge\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC5zZoyZmiLGBTAdiFpj2xHA\\\/videos\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.transparentedge.eu\\\/#\\\/schema\\\/person\\\/fcdb445ff7e6874803003aeac88c713d\",\"name\":\"Oscar odorrego\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/odorrego\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CDN plugin for Magento 2 - Transparent Edge","description":"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\/AVIF, and preloads pages using Speculation Rules. Install it for free.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/","og_locale":"en_US","og_type":"article","og_title":"CDN plugin for Magento 2 - Transparent Edge","og_description":"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\/AVIF, and preloads pages using Speculation Rules. Install it for free.","og_url":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/","og_site_name":"Transparent Edge","article_published_time":"2026-07-31T09:34:52+00:00","article_modified_time":"2026-07-31T09:34:53+00:00","og_image":[{"width":2063,"height":1377,"url":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg","type":"image\/jpeg"}],"author":"Oscar odorrego","twitter_card":"summary_large_image","twitter_creator":"@tedgeservices","twitter_site":"@tedgeservices","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#article","isPartOf":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/"},"author":{"name":"Oscar odorrego","@id":"https:\/\/www.transparentedge.eu\/#\/schema\/person\/fcdb445ff7e6874803003aeac88c713d"},"headline":"CDN plugin for Magento 2","datePublished":"2026-07-31T09:34:52+00:00","dateModified":"2026-07-31T09:34:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/"},"wordCount":1511,"publisher":{"@id":"https:\/\/www.transparentedge.eu\/#organization"},"image":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg","articleSection":["cdn","alto rendimiento"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/","url":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/","name":"CDN plugin for Magento 2 - Transparent Edge","isPartOf":{"@id":"https:\/\/www.transparentedge.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#primaryimage"},"image":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg","datePublished":"2026-07-31T09:34:52+00:00","dateModified":"2026-07-31T09:34:53+00:00","description":"Open-source plugin for Magento 2 that automatically invalidates the CDN cache, serves WebP\/AVIF, and preloads pages using Speculation Rules. Install it for free.","breadcrumb":{"@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#primaryimage","url":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg","contentUrl":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2026\/03\/TE_blog_Los_invisibles_CDN.jpg","width":2063,"height":1377},{"@type":"BreadcrumbList","@id":"https:\/\/www.transparentedge.eu\/blog\/cdn-plugin-for-magento-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.transparentedge.eu\/en\/"},{"@type":"ListItem","position":2,"name":"CDN plugin for Magento 2"}]},{"@type":"WebSite","@id":"https:\/\/www.transparentedge.eu\/#website","url":"https:\/\/www.transparentedge.eu\/","name":"Transparent Edge","description":"","publisher":{"@id":"https:\/\/www.transparentedge.eu\/#organization"},"alternateName":"Transparent Edge","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.transparentedge.eu\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.transparentedge.eu\/#organization","name":"Transparent Edge Services","alternateName":"Transparent Edge","url":"https:\/\/www.transparentedge.eu\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.transparentedge.eu\/#\/schema\/logo\/image\/","url":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2023\/07\/logotipo-cuadrado.jpg","contentUrl":"https:\/\/www.transparentedge.eu\/wp-content\/uploads\/2023\/07\/logotipo-cuadrado.jpg","width":1328,"height":1180,"caption":"Transparent Edge Services"},"image":{"@id":"https:\/\/www.transparentedge.eu\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/tedgeservices","https:\/\/www.linkedin.com\/company\/transparent-edge\/","https:\/\/www.youtube.com\/channel\/UC5zZoyZmiLGBTAdiFpj2xHA\/videos"]},{"@type":"Person","@id":"https:\/\/www.transparentedge.eu\/#\/schema\/person\/fcdb445ff7e6874803003aeac88c713d","name":"Oscar odorrego","sameAs":["https:\/\/www.linkedin.com\/in\/odorrego\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/posts\/23619","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/comments?post=23619"}],"version-history":[{"count":1,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/posts\/23619\/revisions"}],"predecessor-version":[{"id":23622,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/posts\/23619\/revisions\/23622"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/media\/22836"}],"wp:attachment":[{"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/media?parent=23619"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/categories?post=23619"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.transparentedge.eu\/en\/wp-json\/wp\/v2\/tags?post=23619"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}