{"id":4651,"date":"2023-06-05T08:00:00","date_gmt":"2023-06-05T13:00:00","guid":{"rendered":"https:\/\/skatox.com\/blog\/?p=4651"},"modified":"2023-06-04T00:06:13","modified_gmt":"2023-06-04T05:06:13","slug":"js-categories-list-4-0","status":"publish","type":"post","link":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/","title":{"rendered":"JS Categories List 4.0"},"content":{"rendered":"\n<p>Luego de 7 a\u00f1os tuve la oportunidad de dedicarle tiempo a mi plugin <a href=\"https:\/\/wordpress.org\/plugins\/jquery-categories-list\/\" target=\"_blank\" rel=\"noreferrer noopener\">JS Categories List<\/a>  y poder actualizarlo para que est\u00e9 al d\u00eda respecto a los est\u00e1ndares de WordPress y de la web en general. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img decoding=\"async\" sizes=\"(max-width: 425px) 100vw, 425px\" src=\"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png\" alt=\"Listado de categor\u00edas de forma din\u00e1mica\" class=\"wp-image-4652\" width=\"425\" height=\"446\"\/><figcaption class=\"wp-element-caption\">El plugin muestra un listado de categor\u00edas expandibles<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Durante este tiempo WordPress a\u00f1adi\u00f3 <a href=\"https:\/\/wordpress.org\/gutenberg\/\" target=\"_blank\" rel=\"noreferrer noopener\">Gutenberg<\/a>, un editor visual que ahora se incorpora en cada instalaci\u00f3n y poco a poco va tomando el liderazgo de como crear el contenido. Por este motivo los widget\/bloques han migrado a ser hechos con una aplicaci\u00f3n en React y que llame a entradas del API del sitio.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Eliminaci\u00f3n de jQuery de JS Categories List <\/h2>\n\n\n\n<p>En estos 7 a\u00f1os el principal cambio fue lo innecesario de depender de jQuery. Su popularidad se deb\u00eda porque est\u00e1 incluida en cada instalaci\u00f3n y anteriormente ayudaba a manipular el DOM f\u00e1cilmente debido a las limitaciones de los navegadores.<\/p>\n\n\n\n<p>Pero actualmente no es necesario usarla: los navegadores ya permiten hacer nativamente mucha de sus funcionalidad, la librer\u00eda requiere cargar contenido JS innecesario y los bloques de Gutenberg se realizan con React quien ofrece mucho mas. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Creaci\u00f3n del bloque de Gutenberg<\/h2>\n\n\n\n<p>Primero fue mejorar el c\u00f3digo fuente, cuya tarea mas que todo fue aplicar estandarizaci\u00f3n de c\u00f3digo PHP, organizar mejor el c\u00f3digo, rescribir partes mal hechas<\/p>\n\n\n\n<p>Luego fue la creaci\u00f3n del bloque de Gutenberg, tom\u00e9 como base el c\u00f3digo fuente de mi <a href=\"https:\/\/skatox.com\/blog\/2022\/06\/07\/js-archive-list-5-0\/\">otro plugin<\/a> recientemente actualizado y lo modifiqu\u00e9 para funcionar con categor\u00edas en vez de archivos. <\/p>\n\n\n\n<p>Los bloques de Gutenberg usan React,  as\u00ed que me toc\u00f3 rescribir el plugin desde el PHP que genera HTML a componentes JSX. La l\u00f3gica es similar pero en esta migraci\u00f3n pude hacer mejoras que luego apliqu\u00e9 a la versi\u00f3n de PHP.<\/p>\n\n\n\n<p>Para facilitar futuras mejoras y ver que el c\u00f3digo funciona, agregu\u00e9 pruebas jest a los componentes y as\u00ed asegurarme que todo funciona bien. En futuros cambios, ahora tendr\u00e9 como probar los cambios y garantizar el correcto funcionamiento,<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Animaciones en JavaScript<\/h2>\n\n\n\n<p>Una de las principales funcionalidades que ofrec\u00eda jQuery es de animaciones sencillas con simplemente llamar una funci\u00f3n. Esta funcionalidad no est\u00e1 disponible en el JavaScript puro porque esas caracter\u00edsticas se fueron agregando a CSS. <\/p>\n\n\n\n<p>En mi plugin de <a href=\"https:\/\/wordpress.org\/plugins\/jquery-archive-list-widget\/\" target=\"_blank\" rel=\"noreferrer noopener\">JS Archive List<\/a>, logr\u00e9 implementar las animaciones usando clases CSS pero no funcionan bien en algunos casos reportados por usuarios, sobre todo, cuando hay altura din\u00e1mica. <\/p>\n\n\n\n<p>Por ello, para este JS Categories List decid\u00ed crearlas desde 0 en <em>vanilla JS<\/em>  para que funcionen bien en cualquier escenario. Descart\u00e9 el uso de clases CSS por el problema mencionado, ademas que es mas f\u00e1cil de probar de forma automatizada.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Experiencia al actualizar JS Categories List<\/h2>\n\n\n\n<p>Aprend\u00ed mucho al rescribir mi c\u00f3digo antiguo. Not\u00e9 como ha evolucionado mi forma de programar a lo largo de estos a\u00f1os, c\u00f3mo la tecnolog\u00eda cambia pero las bases de WordPress se mantienen y  la retrocompatibilidad se respeta. Con raz\u00f3n este CMS es el mas usado en el mundo.<\/p>\n\n\n\n<p>Pude pulir mis conocimientos de React, de pruebas automatizadas con Jest y aplicar mejores patrones en el c\u00f3digo de PHP. Tambi\u00e9n el resultado me permitir\u00e1 actualizar con mayor frecuencia este plugin y ofrecer mejoras.<\/p>\n\n\n\n<p>Si usas WordPress te recomiendo <a href=\"https:\/\/wordpress.org\/plugins\/jquery-categories-list\/\" target=\"_blank\" rel=\"noreferrer noopener\">descargar e instalar mi plugin<\/a>. <\/p>\n\n\n\n<p>Espero que te guste y lo uses en tu sitio.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Luego de 7 a\u00f1os tuve la oportunidad de dedicarle tiempo a mi plugin JS Categories List y poder actualizarlo para que est\u00e9 al d\u00eda respecto&#8230;<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/\">Seguir leyendo<span class=\"screen-reader-text\">JS Categories List 4.0<\/span><\/a><\/div>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Luego de 7 a\u00f1os actualizo mi plugin de WordPress; JS Categories List","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[549,1017],"tags":[1225,686,599],"class_list":["post-4651","post","type-post","status-publish","format-standard","hentry","category-desarrollo-web","category-wordpress","tag-gutenberg","tag-js","tag-widget","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JS Categories List 4.0 - El blog de Skatox<\/title>\n<meta name=\"description\" content=\"Luego de 7 a\u00f1os el plugin de JS Categories List se ha actualizado para estar al d\u00eda con las \u00faltimas tecnolog\u00edas de WordPress y la web\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JS Categories List 4.0 - El blog de Skatox\" \/>\n<meta property=\"og:url\" content=\"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/\" \/>\n<meta property=\"og:site_name\" content=\"El blog de Skatox\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ElWeblogdeSkatox\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-05T13:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png\" \/>\n<meta name=\"author\" content=\"Miguel Useche\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@skatox\" \/>\n<meta name=\"twitter:site\" content=\"@skatox\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Miguel Useche\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/\"},\"author\":{\"name\":\"Miguel Useche\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/person\\\/e081bf33c5b0f1b0514e253cb578e1ba\"},\"headline\":\"JS Categories List 4.0\",\"datePublished\":\"2023-06-05T13:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/\"},\"wordCount\":572,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2023\\\/06\\\/screenshot-2.png\",\"keywords\":[\"gutenberg\",\"js\",\"widget\"],\"articleSection\":[\"Desarrollo web\",\"Wordpress\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/\",\"name\":\"JS Categories List 4.0 - El blog de Skatox\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2023\\\/06\\\/screenshot-2.png\",\"datePublished\":\"2023-06-05T13:00:00+00:00\",\"description\":\"Luego de 7 a\u00f1os el plugin de JS Categories List se ha actualizado para estar al d\u00eda con las \u00faltimas tecnolog\u00edas de WordPress y la web\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#primaryimage\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2023\\\/06\\\/screenshot-2.png\",\"contentUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2023\\\/06\\\/screenshot-2.png\",\"width\":425,\"height\":446},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2023\\\/06\\\/05\\\/js-categories-list-4-0\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JS Categories List 4.0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\",\"name\":\"El blog de Skatox\",\"description\":\"Compartiendo mis opiniones inform\u00e1ticas mas all\u00e1 de los 280 caracteres\",\"publisher\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/skatox.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\",\"name\":\"El blog de Skatox\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2022\\\/03\\\/tux.png\",\"contentUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2022\\\/03\\\/tux.png\",\"width\":218,\"height\":218,\"caption\":\"El blog de Skatox\"},\"image\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/ElWeblogdeSkatox\\\/\",\"https:\\\/\\\/x.com\\\/skatox\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/skatox\\\/\",\"https:\\\/\\\/www.youtube.com\\\/c\\\/MiguelAngelUsecheCastro\",\"https:\\\/\\\/x.com\\\/skatox\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/person\\\/e081bf33c5b0f1b0514e253cb578e1ba\",\"name\":\"Miguel Useche\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"contentUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"caption\":\"Miguel Useche\"},\"sameAs\":[\"https:\\\/\\\/skatox.com\",\"https:\\\/\\\/x.com\\\/skatox\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JS Categories List 4.0 - El blog de Skatox","description":"Luego de 7 a\u00f1os el plugin de JS Categories List se ha actualizado para estar al d\u00eda con las \u00faltimas tecnolog\u00edas de WordPress y la web","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:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/","og_locale":"es_ES","og_type":"article","og_title":"JS Categories List 4.0 - El blog de Skatox","og_url":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/","og_site_name":"El blog de Skatox","article_publisher":"https:\/\/www.facebook.com\/ElWeblogdeSkatox\/","article_published_time":"2023-06-05T13:00:00+00:00","og_image":[{"url":"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png","type":"","width":"","height":""}],"author":"Miguel Useche","twitter_card":"summary_large_image","twitter_creator":"@skatox","twitter_site":"@skatox","twitter_misc":{"Escrito por":"Miguel Useche","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#article","isPartOf":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/"},"author":{"name":"Miguel Useche","@id":"https:\/\/skatox.com\/blog\/#\/schema\/person\/e081bf33c5b0f1b0514e253cb578e1ba"},"headline":"JS Categories List 4.0","datePublished":"2023-06-05T13:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/"},"wordCount":572,"commentCount":0,"publisher":{"@id":"https:\/\/skatox.com\/blog\/#organization"},"image":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#primaryimage"},"thumbnailUrl":"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png","keywords":["gutenberg","js","widget"],"articleSection":["Desarrollo web","Wordpress"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/","url":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/","name":"JS Categories List 4.0 - El blog de Skatox","isPartOf":{"@id":"https:\/\/skatox.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#primaryimage"},"image":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#primaryimage"},"thumbnailUrl":"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png","datePublished":"2023-06-05T13:00:00+00:00","description":"Luego de 7 a\u00f1os el plugin de JS Categories List se ha actualizado para estar al d\u00eda con las \u00faltimas tecnolog\u00edas de WordPress y la web","breadcrumb":{"@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#primaryimage","url":"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png","contentUrl":"https:\/\/skatox.com\/blog\/images\/2023\/06\/screenshot-2.png","width":425,"height":446},{"@type":"BreadcrumbList","@id":"https:\/\/skatox.com\/blog\/2023\/06\/05\/js-categories-list-4-0\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/skatox.com\/blog\/"},{"@type":"ListItem","position":2,"name":"JS Categories List 4.0"}]},{"@type":"WebSite","@id":"https:\/\/skatox.com\/blog\/#website","url":"https:\/\/skatox.com\/blog\/","name":"El blog de Skatox","description":"Compartiendo mis opiniones inform\u00e1ticas mas all\u00e1 de los 280 caracteres","publisher":{"@id":"https:\/\/skatox.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/skatox.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/skatox.com\/blog\/#organization","name":"El blog de Skatox","url":"https:\/\/skatox.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/skatox.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/skatox.com\/blog\/images\/2022\/03\/tux.png","contentUrl":"https:\/\/skatox.com\/blog\/images\/2022\/03\/tux.png","width":218,"height":218,"caption":"El blog de Skatox"},"image":{"@id":"https:\/\/skatox.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ElWeblogdeSkatox\/","https:\/\/x.com\/skatox","https:\/\/www.linkedin.com\/in\/skatox\/","https:\/\/www.youtube.com\/c\/MiguelAngelUsecheCastro","https:\/\/x.com\/skatox\/"]},{"@type":"Person","@id":"https:\/\/skatox.com\/blog\/#\/schema\/person\/e081bf33c5b0f1b0514e253cb578e1ba","name":"Miguel Useche","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","url":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","contentUrl":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","caption":"Miguel Useche"},"sameAs":["https:\/\/skatox.com","https:\/\/x.com\/skatox"]}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":4460,"url":"https:\/\/skatox.com\/blog\/2022\/06\/07\/js-archive-list-5-0\/","url_meta":{"origin":4651,"position":0},"title":"JS Archive List 5.0","author":"Miguel Useche","date":"7 de junio de 2022","format":false,"excerpt":"Luego de mas de 3 a\u00f1os sin poder dedicar tiempo a mi primer plugin de WordPress: JS Archive List. Finalmente he conseguido trabajar en \u00e9l y lanzar una nueva versi\u00f3n. La idea era actualizarlo a las \u00faltimas tecnolog\u00edas, realizar mantenimiento y correcci\u00f3n de errores. Nuevo nombre: JS Archive List Widget\u2026","rel":"","context":"En \u00abPlanetas\u00bb","block_context":{"text":"Planetas","link":"https:\/\/skatox.com\/blog\/category\/planetas-linux\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":6173,"url":"https:\/\/skatox.com\/blog\/2026\/02\/23\/js-archive-li-actualizacion-seguridad\/","url_meta":{"origin":4651,"position":1},"title":"JS Archive List 6.2.0: actualizaci\u00f3n de seguridad, limpieza de i18n y m\u00e1s pruebas automatizadas","author":"Miguel Useche","date":"23 de febrero de 2026","format":false,"excerpt":"Hay actualizaciones \u201ccosm\u00e9ticas\u201d y otras de urgencia, con un enfoque en la calidad, porque resuelven problemas que surgen en producci\u00f3n. La versi\u00f3n 6.2.0 de JS Archive List se clasifica en la segunda categor\u00eda. En la secci\u00f3n de changelog de WordPress, el foco est\u00e1 clar\u00edsimo: es una actualizaci\u00f3n de seguridad y\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif","width":350,"height":200,"srcset":"https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 1x, https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 1.5x, https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 2x"},"classes":[]},{"id":2056,"url":"https:\/\/skatox.com\/blog\/2010\/12\/07\/jquery-categories-list\/","url_meta":{"origin":4651,"position":2},"title":"jQuery Categories List","author":"Miguel Useche","date":"7 de diciembre de 2010","format":false,"excerpt":"Este es mi segundo plugin para Wordpress, creado por solicitud de varios usuarios quienes pidieron tener un plugin similar a jQuery Archive List pero para mostrar las categor\u00edas de un blog. B\u00e1sicamente es el mismo plugin a diferencia que muestra las categor\u00edas y la configuraci\u00f3n es un poco distinta. Entre\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":5318,"url":"https:\/\/skatox.com\/blog\/2025\/11\/28\/como-corregi-una-vulnerabilidad-en-mi-plugin-js-archive-list-tras-un-reporte-de-wordfence\/","url_meta":{"origin":4651,"position":3},"title":"C\u00f3mo correg\u00ed una vulnerabilidad en mi plugin JS Archive List tras un reporte de WordFence","author":"Miguel Useche","date":"28 de noviembre de 2025","format":false,"excerpt":"JS Archive List es un plugin que cre\u00e9 hace m\u00e1s de una d\u00e9cada para mostrar archivos de entradas de WordPress en un formato m\u00e1s limpio y din\u00e1mico usando JavaScript (inicialmente era con JQuery). Pues hace unas semanas recib\u00ed un correo de un grupo de hackers y del equipo de Wordfence\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif","width":350,"height":200,"srcset":"https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 1x, https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 1.5x, https:\/\/skatox.com\/blog\/images\/2025\/11\/image-1.avif 2x"},"classes":[]},{"id":2053,"url":"https:\/\/skatox.com\/blog\/2010\/11\/26\/actualizacion-de-mi-plugin-jquery-archive-list-widget-para-wordpress\/","url_meta":{"origin":4651,"position":4},"title":"Actualizaci\u00f3n de mi plugin jQuery Archive List Widget para WordPress","author":"Miguel Useche","date":"26 de noviembre de 2010","format":false,"excerpt":"Luego de 11 meses sin prestarle atenci\u00f3n, esta semana decid\u00ed dedicarle un tiempo a mejorar este plugin de Wordpress. Me d\u00ed cuenta que ten\u00eda sugerencia por parte de algunos usuarios para agregar caracter\u00edsticas, mejorar unas existentes y otras cosas que ten\u00eda en mente. Al revisar me di cuenta de la\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2065,"url":"https:\/\/skatox.com\/blog\/2010\/12\/28\/liberado-jquery-categories-list-1-1\/","url_meta":{"origin":4651,"position":5},"title":"Liberado jQuery Categories List 1.1","author":"Miguel Useche","date":"28 de diciembre de 2010","format":false,"excerpt":"Hace unas semanas hice un plugin para wordpress, donde se imprime una lista de las categor\u00edas de forma compacta y expandible mediante animaciones\u00a0 jQuery, pues hoy he liberado la versi\u00f3n 1.1 del mismo, con la novedad que ahora pueden excluir del listado las categor\u00edas que deseen. Esta caracter\u00edstica fue agregada\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts\/4651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/comments?post=4651"}],"version-history":[{"count":0,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts\/4651\/revisions"}],"wp:attachment":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/media?parent=4651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/categories?post=4651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/tags?post=4651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}