{"id":8435,"date":"2026-10-08T10:17:23","date_gmt":"2026-10-08T08:17:23","guid":{"rendered":"https:\/\/helpdesk.kontainer.com\/article\/guia-de-integracion-con-strapi\/"},"modified":"2026-10-08T10:17:23","modified_gmt":"2026-10-08T08:17:23","slug":"guia-de-integracion-con-strapi","status":"publish","type":"article","link":"https:\/\/helpdesk.kontainer.com\/es\/article\/guia-de-integracion-con-strapi\/","title":{"rendered":"Gu\u00eda de integraci\u00f3n con Strapi"},"content":{"rendered":"<p>Con la integraci\u00f3n de Kontainer con Strapi, tus editores pueden elegir im\u00e1genes, v\u00eddeos y archivos directamente desde tu DAM sin subir archivos a Strapi.<br \/>\nStrapi solo guarda una referencia al archivo; el archivo en s\u00ed permanece en Kontainer y se entrega a trav\u00e9s de la CDN.<\/p>\n<p>Ve a la <a href=\"https:\/\/kontainer.com\/es\/integraciones\" target=\"_blank\" rel=\"noopener\">p\u00e1gina de integraciones<\/a> de Kontainer para saber m\u00e1s sobre los casos de uso, las ventajas y m\u00e1s.<\/p>\n<h2>Requisitos<\/h2>\n<ul>\n<li>Strapi v5 (Strapi v4 no es compatible)<\/li>\n<li>Node.js 18 o superior<\/li>\n<li>Una cuenta de Kontainer (https:\/\/yourcompany.kontainer.com)<\/li>\n<li>Un desarrollador con acceso al c\u00f3digo de tu Strapi y con capacidad para desplegar<\/li>\n<\/ul>\n<h2>\u00bfQu\u00e9 se guarda y d\u00f3nde?<\/h2>\n<p>Tus archivos se quedan en Kontainer. No se sube nada a la biblioteca multimedia de Strapi. Strapi solo guarda una referencia JSON al archivo, que incluye:<\/p>\n<ul>\n<li><code>fileId, fileName, folderId <\/code>: identificadores para recuperar el archivo<\/li>\n<li><code>url<\/code>: la URL de la CDN, incluida la plantilla de descarga que hayas elegido<\/li>\n<li><code>thumbnailUrl, type, extension, dimensions, size<\/code><\/li>\n<li><code>alt, description <\/code>y todos los campos personalizados de Kontainer<\/li>\n<\/ul>\n<p>Como el texto alternativo y todos los valores de los campos personalizados viajan con la referencia, los editores no tienen que volver a escribir los metadatos en Strapi, y tu frontend puede leerlos directamente de la respuesta de la API de Strapi.<\/p>\n<h2>Primeros pasos<\/h2>\n<h3>1. Instala el plugin<\/h3>\n<p>En tu proyecto de Strapi:<\/p>\n<pre><code>npm install @kontainer\/strapi-plugin<\/code><\/pre>\n<p>Sube a tu repositorio (commit) package.json y package-lock.json para que el plugin se incluya en tu despliegue. Strapi detecta y activa el plugin autom\u00e1ticamente: no hace falta cambiar ning\u00fan archivo de configuraci\u00f3n.<\/p>\n<h3>2. A\u00f1ade el campo de Kontainer a un tipo de contenido<\/h3>\n<p>En el Content-Type Builder, elige \u00abCustom fields \u2192 Kontainer media\u00bb (campos personalizados), o a\u00f1\u00e1delo directamente al esquema:<\/p>\n<p><code>\"hero\": {<br \/>\n\"type\": \"customField\",<br \/>\n\"customField\": \"plugin::kontainer.media\"<br \/>\n}<\/code><\/p>\n<p>El Content-Type Builder es de solo lectura en producci\u00f3n, as\u00ed que haz este cambio en tu entorno de desarrollo y despliega el cambio de esquema.<\/p>\n<h3>3. Compila<\/h3>\n<p>La interfaz de administraci\u00f3n del plugin se compila dentro del paquete de administraci\u00f3n. Este paso es obligatorio: sin \u00e9l, el bot\u00f3n \u00abChoose from Kontainer\u00bb no aparece.<\/p>\n<p><code> npm ci --omit=dev<br \/>\nnpm run build<br \/>\nnpm run start<br \/>\n<\/code><\/p>\n<h3>4. Con\u00e9ctate a Kontainer<\/h3>\n<p>Ve a \u00abSettings \u2192 Kontainer \u2192 Configuration\u00bb (ajustes, Kontainer, configuraci\u00f3n) e introduce la URL de tu Kontainer. Eso es toda la configuraci\u00f3n: no hacen falta claves de API ni variables de entorno.<\/p>\n<p>Los ajustes se guardan en la base de datos de Strapi, as\u00ed que tendr\u00e1s que definirlos una vez por entorno (preproducci\u00f3n y producci\u00f3n por separado).<\/p>\n<h3>5. Elige archivos<\/h3>\n<p>En el editor, haz clic en \u00abChoose from Kontainer\u00bb (elegir desde Kontainer) en el campo. Navega, busca y filtra tu biblioteca de Kontainer, aplica opcionalmente una plantilla de descarga (recorte, cambio de tama\u00f1o, formato) y elige el archivo. Strapi guarda la referencia; la URL de la CDN refleja la plantilla que hayas elegido.<\/p>\n<h2>Opcional: seguimiento del uso de archivos<\/h2>\n<p>Kontainer puede mostrarte d\u00f3nde se usa cada archivo en Strapi. En \u00abSettings \u2192 Kontainer\u00bb, haz clic en \u00abGenerate\u00bb (generar) para crear un token y registra despu\u00e9s la URL del endpoint que se muestra, junto con el token, como integraci\u00f3n en Kontainer, en Ajustes \u2192 Integraciones. Kontainer consulta entonces Strapi e informa del uso en todos los tipos de contenido, incluidos borradores, idiomas (locales), componentes y zonas din\u00e1micas.<\/p>\n<h2>Usar la referencia en tu frontend<\/h2>\n<p>La referencia vuelve sin cambios de la API de contenido de Strapi:<\/p>\n<p><code>const page = await fetch(`${STRAPI_URL}\/api\/pages\/${documentId}`).then((r) =&gt; r.json());<br \/>\nconst { url, alt } = page.data.hero;<\/code><\/p>\n<p>Solicita el archivo desde <code>url<\/code>: se sirve desde la CDN de Kontainer.<\/p>\n<h2>Soporte<\/h2>\n<p>Si necesitas ayuda para configurar el plugin de Strapi, nuestro equipo de soporte te ayudar\u00e1 encantado.<\/p>\n<p>Escribe a: <a href=\"mailto:support@kontainer.com\">support@kontainer.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Con la integraci\u00f3n de Kontainer con Strapi, puedes insertar im\u00e1genes, v\u00eddeos y archivos directamente desde tu DAM en el panel de administraci\u00f3n de Strapi, sin descargarlos y subirlos a mano.<\/p>\n","protected":false},"author":16,"featured_media":0,"menu_order":0,"comment_status":"","ping_status":"closed","template":"","article-category":[208,211],"article-tag":[215,220,222],"class_list":["post-8435","article","type-article","status-publish","hentry","article-category-ajustes-de-administracion","article-category-integraciones-y-plugins","article-tag-funcion-adicional","article-tag-planes-premium","article-tag-dam"],"translations":{"da":{"id":8009,"title":"Integrationsguide til Strapi","url":"https:\/\/helpdesk.kontainer.com\/da\/article\/integrationsguide-til-strapi\/"},"de":{"id":7600,"title":"Strapi-Integrationsleitfaden","url":"https:\/\/helpdesk.kontainer.com\/de\/article\/strapi-integrationsleitfaden\/"},"en":{"id":7597,"title":"Strapi Integration Guide","url":"https:\/\/helpdesk.kontainer.com\/article\/strapi-integration-guide\/"},"es":{"id":8435,"title":"Gu\u00eda de integraci\u00f3n con Strapi","url":"https:\/\/helpdesk.kontainer.com\/es\/article\/guia-de-integracion-con-strapi\/"},"fr":{"id":8313,"title":"Guide d\u2019int\u00e9gration de Strapi","url":"https:\/\/helpdesk.kontainer.com\/fr\/article\/guide-dintegration-strapi\/"},"nl":{"id":8136,"title":"Integratiegids voor Strapi","url":"https:\/\/helpdesk.kontainer.com\/nl\/article\/integratiegids-voor-strapi\/"},"sv":{"id":7859,"title":"Integrationsguide f\u00f6r Strapi","url":"https:\/\/helpdesk.kontainer.com\/sv\/article\/integrationsguide-for-strapi\/"}},"_links":{"self":[{"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/article\/8435","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/comments?post=8435"}],"version-history":[{"count":0,"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/article\/8435\/revisions"}],"wp:attachment":[{"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/media?parent=8435"}],"wp:term":[{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/article-category?post=8435"},{"taxonomy":"article-tag","embeddable":true,"href":"https:\/\/helpdesk.kontainer.com\/es\/wp-json\/wp\/v2\/article-tag?post=8435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}