{"id":6991,"date":"2025-01-21T18:52:15","date_gmt":"2025-01-21T23:52:15","guid":{"rendered":"https:\/\/codebullsteam.com\/?p=6991"},"modified":"2025-03-18T11:31:15","modified_gmt":"2025-03-18T16:31:15","slug":"tutorial-crear-un-plugin-de-wordpress-para-un-slider-de-fotos","status":"publish","type":"post","link":"https:\/\/codebullsteam.com\/es\/tutorial-crear-un-plugin-de-wordpress-para-un-slider-de-fotos\/","title":{"rendered":"Gu\u00eda Completa para Crear un Plugin de WordPress: Codebulls Photo Slider"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introducci\u00f3n<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>En esta gu\u00eda, aprender\u00e1s a desarrollar un plugin de WordPress desde cero para crear un slider de fotos responsive. Cubriremos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Configurar un entorno local con <strong><a href=\"https:\/\/localwp.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Local by Flywheel<\/a><\/strong>.<\/li>\n\n\n\n<li>La estructura de carpetas y archivos del plugin.<\/li>\n\n\n\n<li>Explicaci\u00f3n de cada fragmento de c\u00f3digo.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Beneficios de Crear un Plugin Personalizado en WordPress<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Desarrollar un plugin propio en WordPress ofrece m\u00faltiples ventajas, entre ellas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Funcionalidad a medida<\/strong>: Puedes agregar exactamente lo que necesitas sin depender de soluciones de terceros.<\/li>\n\n\n\n<li><strong>Optimizaci\u00f3n del rendimiento<\/strong>: Al evitar plugins innecesarios, reduces el peso y tiempo de carga de tu sitio.<\/li>\n\n\n\n<li><strong>Mayor seguridad<\/strong>: Controlas el c\u00f3digo y evitas vulnerabilidades presentes en plugins desconocidos.<\/li>\n\n\n\n<li><strong>Escalabilidad<\/strong>: Puedes seguir actualizando y mejorando tu plugin conforme crecen las necesidades de tu proyecto.<\/li>\n\n\n\n<li><strong>Monetizaci\u00f3n<\/strong>: Puedes vender tu plugin en marketplaces como CodeCanyon o en tu propio sitio web.<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Aspectos a Tener en Cuenta<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Al desarrollar un plugin, considera los siguientes puntos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Seguir las mejores pr\u00e1cticas de WordPress<\/strong>: Usa las funciones nativas y est\u00e1ndares recomendados.<\/li>\n\n\n\n<li><strong>Seguridad<\/strong>: Escapa las entradas del usuario y valida los datos para prevenir ataques.<\/li>\n\n\n\n<li><strong>Compatibilidad<\/strong>: Prueba tu plugin con distintas versiones de WordPress y otros plugins populares.<\/li>\n<\/ul>\n\n\n\n<p>Tu plugin tendr\u00e1 esta estructura de carpetas y archivos:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-medium-font-size\"><strong>\u00a1Es hora de poner manos a la obra! Con estos pasos, transformar\u00e1s tus ideas en un plugin completamente funcional. No solo aprender\u00e1s a crearlo, sino que tambi\u00e9n entender\u00e1s c\u00f3mo extender WordPress con tus propias soluciones. \u00a1Vamos all\u00e1!<\/strong><\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 1: Configurar Local by <a href=\"https:\/\/localwp.com\/\" target=\"_blank\" data-type=\"link\" data-id=\"https:\/\/localwp.com\/\" rel=\"noreferrer noopener\">Flywheel<\/a><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>1. Descarga e instala Local<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ve a<a href=\"https:\/\/localwp.com\/\" target=\"_blank\" rel=\"noreferrer noopener\"> Local by Flywheel<\/a> y descarga la versi\u00f3n adecuada para tu sistema operativo.<\/li>\n\n\n\n<li>Instala y abre la aplicaci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p><strong>2. Crea un nuevo sitio de WordPress<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Haz clic en \u00abCreate a New Site\u00bb.<\/li>\n\n\n\n<li>Elige un nombre, por ejemplo, <strong>my-website<\/strong>.<\/li>\n\n\n\n<li>Selecciona \u00abPreferred\u00bb para una configuraci\u00f3n r\u00e1pida o \u00abCustom\u00bb para definir PHP y MySQL.<\/li>\n\n\n\n<li>Configura el usuario y contrase\u00f1a de administrador.<\/li>\n\n\n\n<li>Finaliza y arranca el sitio.<\/li>\n\n\n\n<li>Inicia sesi\u00f3n desde el boton <strong>\u00abWP Admin\u00bb<\/strong> o abre el sitio dando click en el boton <strong>\u00abOpen Site\u00bb<\/strong> y luego agrega en la URL my-website\/wp-admin para iniciar sesi\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Instalar-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 2: Crear la Estructura del Plugin<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Abre tu proyecto en el editor de codigo desde el bot\u00f3n \u201c{} VS Code\u201d.<\/p>\n\n\n\n<p>Dentro de la carpeta wp-content\/plugins\/, crea una carpeta llamada codebulls-photo-slider y dentro, la siguiente estructura:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>wp-content\/\n\u2514\u2500\u2500 plugins\/\n    \u2514\u2500\u2500 photo-slider\/\n        \u251c\u2500\u2500 photo-slider.php\n        \u251c\u2500\u2500 includes\/\n        \u2502   \u251c\u2500\u2500 enqueue-scripts.php\n        \u2502   \u2514\u2500\u2500 slider-shortcode.php\n        \u251c\u2500\u2500 assets\/\n            \u251c\u2500\u2500 css\/\n            \u2502   \u2514\u2500\u2500 style.css\n            \u251c\u2500\u2500 js\/\n            \u2502   \u2514\u2500\u2500 slider.js\n            \u2514\u2500\u2500 images\/\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Estructura-del-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 3: Crear el Archivo Principal del Plugin<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Crea el archivo codebulls-photo-slider.php y a\u00f1ade el siguiente c\u00f3digo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\/*\nPlugin Name: Photo Slider\nPlugin URI: https:\/\/example.com\/\nDescription: Un plugin simple para crear un slider de fotos responsive usando un shortcode.\nVersion: 1.0\nAuthor: Tu Nombre\nAuthor URI: https:\/\/example.com\/\nLicense: GPLv2 or later\nText Domain: photo-slider\n*\/\n\n\/\/ Evitar el acceso directo.\nif ( !defined( 'ABSPATH' ) ) {\n    exit;\n}\n\n\/\/ Definir constantes.\ndefine( 'PHOTO_SLIDER_PATH', plugin_dir_path( __FILE__ ) );\ndefine( 'PHOTO_SLIDER_URL', plugin_dir_url( __FILE__ ) );\n\n\/\/ Incluir archivos necesarios.\nrequire_once PHOTO_SLIDER_PATH . 'includes\/enqueue-scripts.php';\nrequire_once PHOTO_SLIDER_PATH . 'includes\/slider-shortcode.php';\n\n\/\/ Acci\u00f3n para registrar los scripts y estilos.\nadd_action( 'wp_enqueue_scripts', 'photo_slider_enqueue_scripts' );\n\n\/\/ Registrar el shortcode del slider.\nadd_shortcode( 'photo_slider', 'photo_slider_shortcode' );<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Archivo-Principal-del-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Paso 4: Registrar Scripts y Estilos<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Archivo: includes\/enqueue-scripts.php<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction photo_slider_enqueue_scripts() {\n    \/\/ Registrar estilos\n    wp_enqueue_style( 'photo-slider-style', PHOTO_SLIDER_URL . 'assets\/css\/style.css' );\n\n    \/\/ Registrar scripts\n    wp_enqueue_script( 'photo-slider-script', PHOTO_SLIDER_URL . 'assets\/js\/slider.js', array( 'jquery' ), null, true );\n}\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Registrar-Scripts-y-Estilos-para-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Paso 5: Crear el Shortcode del Slider<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Archivo: includes\/slider-shortcode.php<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction photo_slider_shortcode( $atts ) {\n    \/\/ Atributos predeterminados\n    $atts = shortcode_atts( array(\n        'images' => '', \/\/ Lista de URLs separadas por comas\n    ), $atts );\n\n    \/\/ Obtener las im\u00e1genes\n    $images = explode( ',', $atts&#91;'images'] );\n    if ( empty( $images ) ) {\n        return '&lt;p>No se han proporcionado im\u00e1genes.&lt;\/p>';\n    }\n\n    \/\/ Construir el slider HTML\n    ob_start(); ?>\n    &lt;div class=\"photo-slider\">\n        &lt;div class=\"slides\">\n            &lt;?php foreach ( $images as $image_url ): ?>\n                &lt;div class=\"slide\">\n                    &lt;img src=\"&lt;?php echo esc_url( $image_url ); ?>\" alt=\"Slider Image\">\n                &lt;\/div>\n            &lt;?php endforeach; ?>\n        &lt;\/div>\n    &lt;\/div>\n    &lt;?php\n    return ob_get_clean();\n}<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Crear-el-Shortcode-del-Slider-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Paso 6: Agregar Estilos y Funcionalidad<\/strong><\/h2>\n\n\n\n<p><strong>Archivo: <code>assets\/css\/style.css<\/code><\/strong><\/p>\n\n\n\n<p>Define estilos b\u00e1sicos para que el slider sea responsive.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.photo-slider {\n    width: 100%;\n    max-width: 800px;\n    margin: auto;\n    overflow: hidden;\n    position: relative;\n}\n\n.slides {\n    display: flex;\n    transition: transform 0.5s ease-in-out;\n}\n\n.slide {\n    min-width: 100%;\n    box-sizing: border-box;\n}\n\n.slide img {\n    width: 100%;\n    display: block;\n}\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Agregar-Estilos-para-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Archivo: <\/strong><strong>assets\/js\/slider.js<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>document.addEventListener(\"DOMContentLoaded\", function () {\n    const slider = document.querySelector(\".codebulls-slider .slides\");\n    const slides = document.querySelectorAll(\".codebulls-slider .slide\");\n    let currentIndex = 0;\n\n    function showSlide(index) {\n        if (index >= slides.length) {\n            currentIndex = 0;\n        } else if (index &lt; 0) {\n            currentIndex = slides.length - 1;\n        } else {\n            currentIndex = index;\n        }\n\n        const offset = -currentIndex * 100;\n        slider.style.transform = `translateX(${offset}%)`;\n    }\n\n    function nextSlide() {\n        showSlide(currentIndex + 1);\n    }\n\n    setInterval(nextSlide, 3000); \/\/ Cambia de imagen cada 3 segundos\n});<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Script-para-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Paso 7: Subir Im\u00e1genes al Media Library<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Abre la pesta\u00f1a <strong>Media <\/strong>en el panel de administraci\u00f3n de WordPress y arrastra las im\u00e1genes que quieres utilizar en el slider. Una vez cargadas, estar\u00e1n disponibles para su uso.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/WordPress-Media-Library.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Paso 8: Activar y Probar el Plugin<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ve a Plugins en el dashboard de WordPress.<\/li>\n\n\n\n<li>Activa \u00abCodebulls Photo Slider\u00bb.<\/li>\n\n\n\n<li>Crea una p\u00e1gina y pega el shortcode:<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;codebulls_slider images=\"URL1,URL2,URL3\"]<\/code><\/pre>\n\n\n\n<p>Reemplaza URL1, URL2, URL3 con las URLs de las imagenes previamente cargadas.<br>Guarda y visualiza el resultado.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"http:\/\/codebullsteam.com\/wp-content\/uploads\/2025\/01\/Shortcode-para-Plugin-de-WordPress.gif\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusi\u00f3n<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>\u00a1Felicidades! Ahora tienes un plugin de WordPress completamente funcional para crear un slider de fotos responsive. A trav\u00e9s de este tutorial, aprendiste a configurar un entorno de desarrollo local, estructurar un plugin, registrar scripts, crear un shortcode y manejar im\u00e1genes en la librer\u00eda de medios de WordPress.<\/p>\n\n\n\n<p>Este es solo el comienzo: puedes seguir personalizando y mejorando tu plugin agregando opciones de personalizaci\u00f3n, transiciones avanzadas o incluso integr\u00e1ndolo con el editor de bloques de WordPress. Explora, experimenta y divi\u00e9rtete desarrollando en WordPress.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introducci\u00f3n En esta gu\u00eda, aprender\u00e1s a desarrollar un plugin de WordPress desde cero para crear un slider de fotos responsive. Cubriremos: Beneficios de Crear un Plugin Personalizado en WordPress Desarrollar un plugin propio en WordPress ofrece m\u00faltiples ventajas, entre ellas: Aspectos a Tener en Cuenta Al desarrollar un plugin, considera los siguientes puntos: Tu plugin [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":7387,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_joinchat":[],"footnotes":""},"categories":[108],"tags":[],"class_list":["post-6991","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutoriales"],"_links":{"self":[{"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/posts\/6991","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/comments?post=6991"}],"version-history":[{"count":18,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/posts\/6991\/revisions"}],"predecessor-version":[{"id":7033,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/posts\/6991\/revisions\/7033"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/media\/7387"}],"wp:attachment":[{"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/media?parent=6991"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/categories?post=6991"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codebullsteam.com\/es\/wp-json\/wp\/v2\/tags?post=6991"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}