{"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\/integrations\/strapi-cms\" 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.50 o superior (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<p>Mant\u00e9n tu instalaci\u00f3n de Strapi actualizada con las \u00faltimas versiones menores para estar protegido frente a vulnerabilidades de seguridad conocidas.<\/p>\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<p>Si gestionas tu configuraci\u00f3n como c\u00f3digo, puedes definir la URL de Kontainer en la configuraci\u00f3n del plugin de Strapi, por ejemplo desde una variable de entorno. Una URL guardada en el panel de administraci\u00f3n tiene prioridad.<\/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>Dominios personalizados y miniaturas<\/h2>\n<p>El plugin permite autom\u00e1ticamente que las miniaturas de Kontainer de dominios kontainer.com y de una URL definida en tu archivo de configuraci\u00f3n del plugin se carguen en el editor de Strapi. Si usas un dominio personalizado y solo lo has introducido en el panel de administraci\u00f3n, a\u00f1ade el dominio a las directivas <code>img-src<\/code> y <code>media-src<\/code> de la configuraci\u00f3n de middlewares de Strapi (<code>config\/middlewares<\/code>). De lo contrario, las miniaturas no se cargar\u00e1n en el editor. El plugin registra una advertencia al arrancar cuando se da este caso.<\/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<p>Los desarrolladores tambi\u00e9n pueden comprobar d\u00f3nde se usa un archivo concreto mediante el endpoint de uso del plugin (<code>\/api\/kontainer\/usage\/:fileId<\/code>), autenticado con un token de API de Strapi.<\/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<p>El plugin es de c\u00f3digo abierto (licencia MIT). Puedes encontrar el <a href=\"https:\/\/github.com\/Kontainer-Dam-and-Pim\/kontainer-strapi-plugin\" target=\"_blank\" rel=\"noopener\">c\u00f3digo fuente en GitHub<\/a> y el <a href=\"https:\/\/www.npmjs.com\/package\/@kontainer\/strapi-plugin\" target=\"_blank\" rel=\"noopener\">paquete en npm<\/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}]}}