{"id":30046,"date":"2020-01-10T06:10:19","date_gmt":"2020-01-10T14:10:19","guid":{"rendered":"https:\/\/kinsta.com\/?p=63384"},"modified":"2025-02-19T15:16:39","modified_gmt":"2025-02-19T14:16:39","slug":"codigos-cortos-wordpress","status":"publish","type":"post","link":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/","title":{"rendered":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)"},"content":{"rendered":"<p>Los shortcodes de WordPress son una caracter\u00edstica poderosa para hacer cosas geniales con poco esfuerzo. Puede hacer casi cualquier cosa con ellos. Con los shortcodes, la incorporaci\u00f3n de elementos interactivos o la creaci\u00f3n de dise\u00f1os de p\u00e1gina complejos es tan f\u00e1cil como insertar una sola l\u00ednea de c\u00f3digo.<\/p>\n<p>Si quiere <a href=\"https:\/\/kinsta.com\/es\/blog\/plugins-galeria-fotos-wordpress\/\">a\u00f1adir una galer\u00eda<\/a>, simplemente tiene que escribir el siguiente c\u00f3digo:<\/p>\n<pre>[gallery ids=\"47 ,86, 92, 64, 48, 75, 89, 80\" columns=\"4\" size=\"medium\"]<\/pre>\n<p>Esto producir\u00e1 una galer\u00eda con los ID de las im\u00e1genes mencionadas. Tendr\u00e1 4 columnas y su tama\u00f1o m\u00e1ximo ser\u00e1 &#8216;medio&#8217; (seg\u00fan la definici\u00f3n de WordPress).<\/p>\n<p>No hay necesidad de ning\u00fan c\u00f3digo HTML feo.<\/p>\n<figure id=\"attachment_63402\" aria-describedby=\"caption-attachment-63402\" style=\"width: 1133px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63402 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/ejemplo-atajo-galeria-1.jpg\" alt=\"Ejemplo del atajo de la galer\u00eda\" width=\"1133\" height=\"333\"><figcaption id=\"caption-attachment-63402\" class=\"wp-caption-text\">Ejemplo del atajo de la galer\u00eda<\/figcaption><\/figure>\n<p>Los shortcodes eliminan la necesidad de scripts complicados. Incluso si no tiene conocimientos de programaci\u00f3n, puede a\u00f1adir contenido din\u00e1mico sin esfuerzo con su ayuda.<\/p>\n<p>Son muy populares entre <a href=\"https:\/\/kinsta.com\/es\/blog\/contratar-desarrollador-de-wordpress\/\">los desarrolladores de WordPress<\/a>, ya que ayudan enormemente a automatizar la creaci\u00f3n de contenidos y dise\u00f1os. Los shortcodes son para los desarrolladores de WordPress lo que los Macros son para los analistas de datos, o los atajos de teclado para los dise\u00f1adores gr\u00e1ficos profesionales.<\/p>\n<p>En esta gu\u00eda, aprender\u00e1 todo lo que hay que saber sobre los shortcodes. Descubrir\u00e1 c\u00f3mo trabajar con la API de shortcodes creando sus propios shortcodes. Al final, discutiremos el futuro de los shortcodes y donde encajan con el <a href=\"https:\/\/kinsta.com\/es\/blog\/gutenberg-wordpress-editor\/\">nuevo editor de Bloques de WordPress<\/a>.<\/p>\n<p>\u00bfEmocionado? Vamos a empezar!<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>\u00bfQu\u00e9 es un Shortcode?<\/h2>\n<p>En pocas palabras, <strong>Shortcode = Atajo + C\u00f3digo<\/strong>.<\/p>\n<p>T\u00edpicamente, los shortcodes usan etiquetas entre corchetes [] para definir c\u00f3mo se usan. Cada uno de los c\u00f3digos abreviados realiza una funci\u00f3n particular en un centro. Puede ser tan simple como dar formato al contenido o tan complejo como definir toda la estructura del sitio web.<\/p>\n<p>Por ejemplo, puede utilizar los atajos para incrustar deslizadores, <a href=\"https:\/\/kinsta.com\/es\/blog\/plugins-formulario-contacto-wordpress\/\">formularios<\/a> o <a href=\"https:\/\/kinsta.com\/es\/blog\/tablas-precios-wordpress\/\">tablas de precios<\/a>. Incluso puede usarlos para crear plantillas de dise\u00f1o de p\u00e1gina reutilizables.<\/p>\n<h3>Una breve Historia de los Shortcodes<\/h3>\n<p>Los shortcodes se hicieron populares por primera vez gracias a un software de foros en l\u00ednea llamado Ultimate Bulletin Board (UBB). En 1998, introdujeron el <a href=\"https:\/\/www.bbcode.org\/\">BBCode (Bulletin Board Code)<\/a>, una colecci\u00f3n de etiquetas f\u00e1ciles de usar para que los usuarios puedan dar formato a sus mensajes.<\/p>\n<figure id=\"attachment_63405\" aria-describedby=\"caption-attachment-63405\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63405 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/BBCode-Shortcode-Examples-Usage-Output.png\" alt=\"BBCode examples showing the origins of shortcodes to format text\" width=\"1110\" height=\"330\"><figcaption id=\"caption-attachment-63405\" class=\"wp-caption-text\">Formato f\u00e1cil con BBCodes sencillos<\/figcaption><\/figure>\n<p>Como lenguaje de se\u00f1alizaci\u00f3n ligero, BBCode opera con los mismos principios que HTML, excepto que es mucho m\u00e1s simple.<\/p>\n<p>El uso de etiquetas predefinidas tambi\u00e9n es mucho m\u00e1s seguro, ya que los usuarios no pueden insertar c\u00f3digo HTML e introducir vulnerabilidades <a href=\"https:\/\/kinsta.com\/es\/docs\/servicio-de-informacion\/revelar-una-vulnerabilidad-de-seguridad\/\">de seguridad<\/a>. Por ejemplo, un usuario con intenciones maliciosas podr\u00eda utilizar la etiqueta &lt;script&gt; para ejecutar c\u00f3digo JavaScript y romper la funcionalidad del sitio.<\/p>\n<p>Poco despu\u00e9s, otros programas de foros en l\u00ednea como <a href=\"https:\/\/www.phpbb.com\/\">phpBB<\/a>, <a href=\"https:\/\/www.xmbforum2.com\/\">XMB Forum<\/a> y <a href=\"https:\/\/www.vbulletin.com\/\">vBulletin<\/a> a\u00f1adieron la funcionalidad de BBCode en sus tableros de mensajes.<\/p>\n<p>Los shortcodes permitieron a los administradores tener un mayor control sobre lo que sus usuarios pueden y no pueden hacer. Adem\u00e1s, permitieron a los usuarios dar formato a su contenido mediante etiquetas simples.<\/p>\n<p>Debido a las mismas razones de seguridad, WordPress impide que el c\u00f3digo PHP se ejecute dentro del contenido del sitio. Para superar esta limitaci\u00f3n, <a href=\"https:\/\/wordpress.org\/news\/2008\/03\/wordpress-25-brecker\/\">WordPress 2.5 introdujo<\/a> la funcionalidad de los shortcodes en 2008 con el lanzamiento de <a href=\"https:\/\/codex.wordpress.org\/Shortcode_API\">la API de shortcodes<\/a>. Ha demostrado ser una de las caracter\u00edsticas m\u00e1s utilizadas por muchos desarrolladores de plugins y temas de WordPress.<\/p>\n<h3>\u00bfQu\u00e9 son los Shortcodes de WordPress?<\/h3>\n<p>Los shortcodes de WordPress son cadenas de corchetes (<strong>[ ]<\/strong>) que m\u00e1gicamente se transforman en algo fascinante en el frontend. Ofrecen a los usuarios una forma f\u00e1cil de crear y cambiar contenido complicado sin preocuparse por c\u00f3digos HTML complejos o incrustados.<\/p>\n<figure id=\"attachment_63403\" aria-describedby=\"caption-attachment-63403\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63403 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/codigos-cortos-wordpress-usar.png\" alt=\"Los c\u00f3digos cortos de WordPress son simples y f\u00e1ciles de usar\" width=\"1110\" height=\"311\"><figcaption id=\"caption-attachment-63403\" class=\"wp-caption-text\">Los shortcodes de WordPress son simples y f\u00e1ciles de usar<\/figcaption><\/figure>\n<h3>Los 2 Tipos de Shortcodes<\/h3>\n<p>Hay principalmente dos tipos de shortcodes en WordPress.<\/p>\n<figure id=\"attachment_63428\" aria-describedby=\"caption-attachment-63428\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63428 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/atajos-autocierre-encierre-pueden-validos-atributos.png\" alt=\"Los atajos de autocierre y encierre pueden ser v\u00e1lidos con o sin atributos.\" width=\"1110\" height=\"350\"><figcaption id=\"caption-attachment-63428\" class=\"wp-caption-text\">Los atajos de autocierre y cierre pueden ser v\u00e1lidos con o sin atributos.<\/figcaption><\/figure>\n<ul>\n<li><strong>Shortcodes de cierre autom\u00e1tico: <\/strong>Estos no necesitan una etiqueta de cierre.<\/li>\n<\/ul>\n<p>Ejemplo: El shortcode de la <strong>galer\u00eda<\/strong> no necesita una etiqueta de cierre. A\u00f1adimos todo lo que necesita con diferentes atributos.<\/p>\n<ul>\n<li><strong>Shortcodes de cierre: <\/strong>Estos necesitan una etiqueta de cierre. Los shortcodes de cierre generalmente manipulan el contenido entre las etiquetas de apertura y cierre.<\/li>\n<\/ul>\n<p>Ejemplo<em>: <\/em>El shortcode <strong>caption<\/strong> (pie de foto) se utiliza para envolver un caption alrededor de cualquier contenido. Se utiliza principalmente para a\u00f1adir un caption a las im\u00e1genes, pero funciona con cualquier elemento HTML.<\/p>\n<p>Algunos shortcodes funcionan con o sin atributos. Depende de c\u00f3mo se definan.<\/p>\n<h2>Los Shortcodes Predeterminados de WordPress<\/h2>\n<p>WordPress viene con 6 atajos predeterminados:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><a href=\"https:\/\/codex.wordpress.org\/Audio_Shortcode\">audio<\/a>: Incrustar archivos de audio en su sitio web. Incluye controles de reproducci\u00f3n sencillos como Reproducir y Pausar.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Caption_Shortcode\">caption (pie de foto)<\/a><strong>:<\/strong>Envuelva los pies de foto con su contenido. Se utiliza principalmente para agregar subt\u00edtulos de im\u00e1genes, pero puede utilizarlo para cualquier elemento HTML.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Embed_Shortcode\">embed<\/a> : Ampliar la funci\u00f3n oEmbed por defecto. Este atajo le permite establecer diferentes atributos para sus incrustaciones, como establecer sus dimensiones m\u00e1ximas.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Gallery_Shortcode\">galer\u00eda<\/a> : Inserte una simple galer\u00eda de im\u00e1genes en su sitio. Puede utilizar atributos para definir qu\u00e9 im\u00e1genes se utilizan y personalizar el aspecto de la galer\u00eda.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Playlist_Shortcode\">lista de reproducci\u00f3n<\/a> : Muestre una colecci\u00f3n de archivos de audio o v\u00eddeo con este atajo de cierre autom\u00e1tico. Puede darle un modo &#8216;oscuro&#8217; fresco con su atributo de estilo.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Video_Shortcode\">video<\/a>: Incruste un archivo de v\u00eddeo y reprod\u00fazcalo utilizando un simple reproductor de v\u00eddeo. Este atajo permite incrustar v\u00eddeos con estos formatos: mp4, webm, m4v, webm, ogv, wmv, flv.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Para m\u00e1s detalles acerca de c\u00f3mo puede usar los atajos predeterminados y qu\u00e9 atributos soportan, puede consultar los documentos del Codex vinculados.<\/p>\n<h3>\u00bfC\u00f3mo Usar los Shortcodes de WordPress?<\/h3>\n<p>El uso de shortcodes en WordPress es un proceso sencillo. Pero depende de d\u00f3nde quiera a\u00f1adirlos en su sitio. Aseg\u00farese de leer la documentaci\u00f3n de los shortcodes para entender c\u00f3mo funciona. Aprenda los atributos que soporta, para que pueda obtener exactamente lo que desea.<\/p>\n<h3>Uso de Shortcodes de WordPress en P\u00e1ginas y Mensajes<\/h3>\n<p>En primer lugar, vaya al editor de p\u00e1ginas\/postes en el que desea insertar el shortcode.<\/p>\n<p>Si utiliza el editor de Gutenberg, puede a\u00f1adir la etiqueta de shortcode en el bloque independiente <em>Shortcodes<\/em>. Podemos encontrarlo en la secci\u00f3n de<em> Widgets<\/em>.<\/p>\n<figure id=\"attachment_64718\" aria-describedby=\"caption-attachment-64718\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64718 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/anadir-bloque-codigo-corto-gutenberg.png\" alt=\"A\u00f1adir un bloque de c\u00f3digo corto en Gutenberg\" width=\"1100\" height=\"528\"><figcaption id=\"caption-attachment-64718\" class=\"wp-caption-text\">A\u00f1adir un bloque de shortcodes en Gutenberg<\/figcaption><\/figure>\n<figure id=\"attachment_64719\" aria-describedby=\"caption-attachment-64719\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64719 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/bloque-codigo-corto-dedicado-gutenberg.png\" alt=\"Bloque de c\u00f3digo corto dedicado a Gutenberg\" width=\"1100\" height=\"216\"><figcaption id=\"caption-attachment-64719\" class=\"wp-caption-text\">Bloque de shortcodes dedicado a Gutenberg<\/figcaption><\/figure>\n<p>\u00bfSigue utilizando <a href=\"https:\/\/wordpress.org\/plugins\/classic-editor\/\">el Classic Editor (o el plugin)<\/a>? Puede escribir sus etiquetas de shortcodes de la manera cl\u00e1sica. Unos pocos shortcodes pueden incluso tener un bot\u00f3n en la pantalla del editor para insertarlos f\u00e1cilmente.<\/p>\n<figure id=\"attachment_64720\" aria-describedby=\"caption-attachment-64720\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64720 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/anadiendo-atajo-editor-clasico.png\" alt=\"A\u00f1adiendo un atajo en el editor cl\u00e1sico\" width=\"1100\" height=\"224\"><figcaption id=\"caption-attachment-64720\" class=\"wp-caption-text\">A\u00f1adiendo un atajo en el editor cl\u00e1sico<\/figcaption><\/figure>\n<h3>Uso de los Shortcodes de WordPress en los Widgets de la Barra Lateral<\/h3>\n<p>Los c\u00f3digos cortos tambi\u00e9n pueden ser insertados en los widgets de <a href=\"https:\/\/kinsta.com\/es\/blog\/widgets-wordpress\/\">la barra lateral<\/a>. Para a\u00f1adirlos, vaya a <strong>Apariencia<\/strong> <strong>\u00bb Widgets<\/strong> y a\u00f1ada un widget de <strong>Texto<\/strong> a la secci\u00f3n donde quiera a\u00f1adir el atajo.<\/p>\n<figure id=\"attachment_64721\" aria-describedby=\"caption-attachment-64721\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64721 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/anade-codigo-corto-barra-lateral-widget-texto.png\" alt=\"A\u00f1ade un c\u00f3digo corto en tu barra lateral con el widget de texto\" width=\"1100\" height=\"546\"><figcaption id=\"caption-attachment-64721\" class=\"wp-caption-text\">A\u00f1ada un shortcode en su barra lateral con el widget de texto<\/figcaption><\/figure>\n<p>Pegue el shortcode dentro del widget de <em>Texto<\/em> y <em>Gu\u00e1rdelo<\/em>. Puede visitar el frontend de su sitio y ver la salida del shortcode en su barra lateral.<\/p>\n<figure id=\"attachment_64722\" aria-describedby=\"caption-attachment-64722\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64722 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/salida-atajo-puede-verse-barra-lateral.png\" alt=\"La salida del atajo (galer\u00eda) puede verse en la barra lateral\" width=\"1100\" height=\"464\"><figcaption id=\"caption-attachment-64722\" class=\"wp-caption-text\">La salida del atajo (galer\u00eda) puede verse en la barra lateral<\/figcaption><\/figure>\n<p><strong>Nota:<\/strong> Las versiones de WordPress 4.8 y posteriores no soportan los shortcodes en los widgets de la barra lateral. Lea las Mejoras del <a href=\"https:\/\/make.wordpress.org\/core\/2017\/10\/24\/widget-improvements-in-wordpress-4-9\/\">Widget en la actualizaci\u00f3n de WordPress 4.9<\/a> para m\u00e1s informaci\u00f3n.<\/p>\n<h3>Uso de los Shortcodes de WordPress en la Cabecera y el pie de P\u00e1gina<\/h3>\n<p>Los shortcodes de WordPress est\u00e1n en general destinados a p\u00e1ginas, posts y widgets. Pero usted tiene una manera f\u00e1cil de insertar los atajos en cualquier lugar de su sitio.<\/p>\n<p>Digamos que quiere a\u00f1adir un bot\u00f3n de llamada a la acci\u00f3n en su pie de p\u00e1gina o en todos sus mensajes antes de la secci\u00f3n de comentarios. La <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/do_shortcode\/\">funci\u00f3n de devoluci\u00f3n de llamada do_shortcode() es muy \u00fatil<\/a> aqu\u00ed.<\/p>\n<p>Necesita a\u00f1adir el siguiente c\u00f3digo a los archivos header<em>.php<\/em>, <em>footer.php<\/em> o cualquiera de sus plantillas:<\/p>\n<pre><code class=\"language-php\">&lt;?php echo do_shortcode(\"[name_of_your_shortcode]\"); ?&gt;<\/code><\/pre>\n<p>Esto har\u00e1 que el shortcode salga en el lugar donde usted insert\u00f3 el c\u00f3digo.<\/p>\n<p>Debe incluir los corchetes entre las comillas para que se haga referencia al shortcode. Incluir s\u00f3lo su nombre no funcionar\u00e1.<\/p>\n<p>De la misma manera, puede utilizar la funci\u00f3n de devoluci\u00f3n de llamada<em> do_shortcode()<\/em> para habilitar los shortcodes en cualquier lugar de WordPress, como en la secci\u00f3n de comentarios.<\/p>\n<h3>Una r\u00e1pida Introducci\u00f3n a la API de Shortcodes<\/h3>\n<p>La <a href=\"https:\/\/codex.wordpress.org\/Shortcode_API\">API de shortcodes de WordPress<\/a> define c\u00f3mo puede usar los shortcodes para personalizar y expandir la funcionalidad de su sitio. Permite a los desarrolladores crear contenido \u00fanico (por ejemplo, formularios, carruseles, deslizadores, etc.) que los usuarios pueden a\u00f1adir a sus sitios web pegando el shortcode correspondiente.<\/p>\n<p>Puede agregar casi cualquier caracter\u00edstica que pueda imaginar a su sitio web con la ayuda de los shortcodes.<\/p>\n<p>API admite tanto el autocierre como el cierre. Maneja todo el an\u00e1lisis sint\u00e1ctico complicado e incluye funciones de ayuda para establecer y recuperar los atributos predeterminados.<\/p>\n<p>Gracias a\u00a0 API, puede sumergirse directamente en el desarrollo y la personalizaci\u00f3n de los shortcodes, en lugar de perder un tiempo precioso en la definici\u00f3n de expresiones regulares para cada shortcode que haga.<\/p>\n<h3>Comprensi\u00f3n de los Fundamentos de API de Shortcodes<\/h3>\n<p>Cada vez que se abre una p\u00e1gina o un post en WordPress, se buscan los shortcodes registrados mientras se procesa el contenido del sitio.<\/p>\n<p>Si se encuentra un shortcode registrado, la API de shortcodes toma el control y devuelve la salida de los shortcodes. La cadena de salida devuelta sustituye a la etiqueta de shortcode en la ubicaci\u00f3n en la que se a\u00f1adi\u00f3.<\/p>\n<p>Se registra un shortcode en WordPress con la <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_shortcode\/\">funci\u00f3n add_shortcode()<\/a>. As\u00ed es como se hace:<\/p>\n<pre><code class=\"language-php\">add_shortcode( 'shortcode_name', 'shortcode_handler_function' );<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong> shortcode_name:<\/strong> La etiqueta que buscar\u00e1 WordPress mientras analiza el contenido del mensaje. La API de shortcodes le recomienda utilizar s\u00f3lo letras min\u00fasculas, n\u00fameros y guiones bajos para definir su valor (evitar los guiones).<\/li>\n<li><strong>shortcode_handler_function:<\/strong> La funci\u00f3n de devoluci\u00f3n de llamada que se ejecutar\u00e1 despu\u00e9s de que WordPress confirme la presencia de un shortcode registrado.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>La funci\u00f3n del manejador de atajos se define como tal:<\/p>\n<pre><code class=\"language-php\">function shortcode_handler_function( $atts, $content, $tag ){ }<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$atts:<\/strong> Un conjunto asociativo de atributos (es decir, un conjunto de pares clave-valor). Si no define ning\u00fan atributo, por defecto ser\u00e1 un string vac\u00edo.<\/li>\n<li><strong>$content:\u00a0<\/strong>El contenido adjunto, si est\u00e1 definiendo un atajo adjunto. Es <a href=\"https:\/\/developer.wordpress.org\/plugins\/security\/securing-output\/\">responsabilidad de la funci\u00f3n del manejador asegurarse de que<\/a> el valor $content se devuelva a la salida.<\/li>\n<li><strong>$tag:\u00a0<\/strong>El valor de la etiqueta del atajo (<em>nombre_abreviado<\/em> en el ejemplo anterior). Si dos o m\u00e1s c\u00f3digos comparten la misma funci\u00f3n de devoluci\u00f3n de llamada (que es v\u00e1lida), el valor $tag le ayudar\u00e1 a determinar qu\u00e9 c\u00f3digo abre la funci\u00f3n del manejador.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>La API analiza la etiqueta, los atributos y el contenido incluido (si lo hay) del shortcode, pasando por alto los valores a la funci\u00f3n del manejador, que los procesa y devuelve una cadena de salida.<\/p>\n<p>Esta cadena de salida sustituye a la macro de c\u00f3digo abreviado en el frontend de su sitio. Lo que finalmente se ve en el navegador es esta salida.<\/p>\n<h3>\u00bfD\u00f3nde A\u00f1adir sus Scripts de Shortcodes Personalizados?<\/h3>\n<p>Puede a\u00f1adir sus scripts de atajos personalizados al archivo<em> functions.php del<\/em> tema o incluirlos en un plugin.<\/p>\n<p>Si lo agrega a un archivo de tema, puede ejecutar la funci\u00f3n <a href=\"https:\/\/kinsta.com\/es\/blog\/temas-child-wordpress\/#how-wordpress-chooses-template-files\"><em>add_shortcode()<\/em><\/a><em> tal como<\/em> est\u00e1.<\/p>\n<p>Pero si lo agrega a un plugin, le recomiendo que lo inicialice s\u00f3lo despu\u00e9s de que WordPress se haya cargado completamente. Puede asegurarse de ello envolviendo la funci\u00f3n<em> add_shortcode()<\/em> dentro de otra funci\u00f3n. Esto se llama una funci\u00f3n de envoltura:<\/p>\n<pre><code class=\"language-php\">function shortcodes_init(){\n add_shortcode( 'shortcode_name', 'shortcode_handler_function' );\n}\nadd_action('init', 'shortcodes_init');<\/code><\/pre>\n<p>La funci\u00f3n <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_action\/\"><em>add_action()<\/em><\/a><em> engancha<\/em> la funci\u00f3n <strong><em>shortcodes_init<\/em><\/strong> para que se dispare s\u00f3lo despu\u00e9s de que WordPress haya terminado de cargar (se llama el gancho <a href=\"https:\/\/developer.wordpress.org\/reference\/hooks\/init\/\">&#8216;init&#8217;<\/a>).<\/p>\n<h2>\u00bfC\u00f3mo Crear un Shortcode Personalizado en WordPress (Nivel Principiante)<\/h2>\n<p>Ahora que hemos cubierto lo b\u00e1sico, es hora de crear un atajo personalizado.<\/p>\n<p>Para seguir los pasos que se indican a continuaci\u00f3n, es necesario estar familiarizado con el c\u00f3digo PHP y con la edici\u00f3n de los <a href=\"https:\/\/kinsta.com\/es\/blog\/editar-codigo-wordpress\/\">archivos de temas de WordPress<\/a>. Para cuando termine el tutorial, tendr\u00e1s su primer atajo personalizado de WordPress listo para disparar.<\/p>\n<p>Empezaremos con el atajo m\u00e1s simple posible y luego pasaremos a otros m\u00e1s complejos. Disfrute de sus cortos hitos en su camino hacia el dominio de los atajos!<\/p>\n<h3>Ejemplo 1: Uso del Shortcode [current_year]<\/h3>\n<p>Vamos a crear un atajo llamado [current_year] que da como resultado el a\u00f1o actual en su sitio web.<\/p>\n<p>Este atajo es \u00fatil si est\u00e1 agregando contenido a su sitio web que necesita ser actualizado cada a\u00f1o. Por ejemplo, a\u00f1adiendo un aviso de copyright en el pie de p\u00e1gina de su sitio.<\/p>\n<p>Usar\u00e9 un plugin de barebones para a\u00f1adir mis funciones de shortcodes. Puede a\u00f1adirlo al archivo <em>functions.php de<\/em> tu tema y obtener los mismos resultados, pero no lo recomiendo. Sin embargo, est\u00e1 bien para probar y aprender!<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Haga una copia de seguridad antes de hacer cualquier cambio en su sitio. Kinsta proporciona <a href=\"https:\/\/kinsta.com\/es\/docs\/alojamiento-wordpress\/copias-de-seguridad-wordpress\/#wordpress-backup\">copias de seguridad autom\u00e1ticas a todos sus clientes<\/a>.<\/p>\n<\/aside>\n\n<p>Empecemos por crear un plugin. Cree una nueva carpeta en su directorio <strong><em>\/wp-content\/plugins\/<\/em><\/strong>.<\/p>\n<figure id=\"attachment_64723\" aria-describedby=\"caption-attachment-64723\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Where-to-Add-Custom-Shortcodes-WordPress-Plugins.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64723 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/fijate-ubicacion-directorio-plugins.png\" alt=\"F\u00edjate en la ubicaci\u00f3n del directorio de plugins\" width=\"1100\" height=\"478\"><\/a><figcaption id=\"caption-attachment-64723\" class=\"wp-caption-text\">F\u00edjese en la ubicaci\u00f3n del directorio de plugins<\/figcaption><\/figure>\n<p>Voy a llamar a mi plugin \u00absalcodes\u00bb pero puede llamarlo como quiera.<\/p>\n<p>En el directorio de plugins de<strong> salcodes<\/strong>, cree un archivo PHP con el mismo nombre (<strong><em>salcodes.php<\/em><\/strong>). Una vez hecho esto, agregue la siguiente cabecera al archivo de su plugin:<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\n\/*\nPlugin Name:  Salcodes\nVersion: 1.0\nDescription: Output the current year in your WordPress site.\nAuthor: Salman Ravoof\nAuthor URI: https:\/\/www.salmanravoof.com\/\nLicense: GPLv2 or later\nLicense URI: https:\/\/www.gnu.org\/licenses\/gpl-2.0.html\nText Domain: salcodes\n*\/<\/code><\/pre>\n<p>Esta simple cabecera de plugin es lo suficientemente buena para nuestros prop\u00f3sitos. Puede obtener m\u00e1s informaci\u00f3n sobre los <a href=\"https:\/\/developer.wordpress.org\/plugins\/the-basics\/header-requirements\/\">requisitos de encabezado de los plugins<\/a> en el Codex de WordPress. Guarde este archivo y luego vaya a su panel de control de <a href=\"https:\/\/kinsta.com\/es\/blog\/panel-control-administracion-wordpress\/\">WordPress<\/a> para activar el plugin.<\/p>\n<p>Ahora, registremos el shortcode y su funci\u00f3n de manejo. Para ello, a\u00f1ada el siguiente c\u00f3digo a su archivo de plugin:<\/p>\n<pre><code class=\"language-php\">\/**\n * [current_year] returns the Current Year as a 4-digit string.\n * @return string Current Year\n*\/\n\nadd_shortcode( 'current_year', 'salcodes_year' );\nfunction salcodes_init(){\n function salcodes_year() {\n return getdate()['year'];\n }\n}\nadd_action('init', 'salcodes_init');\n\n\/** Always end your PHP files with this closing tag *\/\n?&gt;<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>La etiqueta <a href=\"https:\/\/www.php.net\/manual\/en\/function.return.php\">@return<\/a> en el comentario de PHP define el tipo de output de regreso. A continuaci\u00f3n, una breve descripci\u00f3n de la misma.<\/li>\n<\/ul>\n<ul>\n<li><strong>current_year\u00a0<\/strong>es la etiqueta o nombre abreviado. Esto define la etiqueta de autocierre que necesita a\u00f1adir en su contenido, que en este caso ser\u00eda [current_year].<\/li>\n<\/ul>\n<ul>\n<li><strong>salcodes_year\u00a0<\/strong>es el nombre de la <em>funci\u00f3n del manejador de shortcodes<\/em> que devolver\u00e1 la cadena de salida. Definiremos esta funci\u00f3n de devoluci\u00f3n de llamada en las siguientes l\u00edneas. Ya que estamos creando un simple atajo de autocierre, no tiene que pasarle ning\u00fan valor de variable como $atributos, $contenido o $etiqueta.<\/li>\n<\/ul>\n<ul>\n<li><strong>salcodes_init\u00a0<\/strong>es la funci\u00f3n de envoltura que se engancha a &#8216;init&#8217; para asegurarse de que el shortcode se registra y se ejecuta s\u00f3lo despu\u00e9s de que WordPress haya terminado de cargar. La funci\u00f3n<strong><em> add_action()<\/em><\/strong><em> incorporada de<\/em> WordPress lo hace posible.<\/li>\n<\/ul>\n<ul>\n<li><strong>getdate()\u00a0<\/strong>es una funci\u00f3n PHP que devuelve una matriz de informaci\u00f3n de fecha del timestamp actual. La clave del a\u00f1o contiene el valor del a\u00f1o en curso (como un string de 4 d\u00edgitos). As\u00ed, <strong>getdate()2026 devuelve<\/strong> el a\u00f1o actual. Esta salida es exactamente lo que queremos.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Guarde su archivo de plugin. Ahora es el momento de probar si el atajo funciona como se pretende.<\/p>\n<p>A\u00f1ada el c\u00f3digo abreviado en cualquier parte de su sitio (p\u00e1gina, post, widget de barra lateral, etc.). Lo estoy a\u00f1adiendo al widget de <em>texto de la barra lateral de<\/em> mi sitio.<\/p>\n<figure id=\"attachment_63394\" aria-describedby=\"caption-attachment-63394\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63394 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/probando-atajo-personalizado-anadiendolo-sitio.png\" alt=\"Probando el atajo personalizado a\u00f1adi\u00e9ndolo al sitio\" width=\"1100\" height=\"542\"><figcaption id=\"caption-attachment-63394\" class=\"wp-caption-text\">Probando el atajo personalizado a\u00f1adi\u00e9ndolo al sitio<\/figcaption><\/figure>\n<p>Y como era de esperar, funciona perfectamente.<\/p>\n<figure id=\"attachment_64724\" aria-describedby=\"caption-attachment-64724\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64724 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/salida-shortcode-ano.png\" alt=\"Salida del shortcode del a\u00f1o\" width=\"1100\" height=\"542\"><figcaption id=\"caption-attachment-64724\" class=\"wp-caption-text\">Output del shortcode del a\u00f1o<\/figcaption><\/figure>\n<p>Felicidades por haber alcanzado su primer hito!<\/p>\n<p>El atajo que acaba de crear no tiene ning\u00fan <strong>$atributo<\/strong> o <strong>$variable de contenido<\/strong> asociado a \u00e9l. Aprender\u00e1 a usarlos en los siguientes ejemplos.<\/p>\n<h3>Ejemplo 2: Shortcode para un Bot\u00f3n CTA<\/h3>\n<p>Vamos a crear un atajo de Bot\u00f3n <strong>CTA<\/strong> personalizable. Esto tambi\u00e9n se cerrar\u00e1 autom\u00e1ticamente (lo siento <strong>$contento<\/strong>, necesita aguantar hasta el pr\u00f3ximo).<\/p>\n<p>Quiero que los usuarios puedan personalizar el tama\u00f1o y el color del Bot\u00f3n CTA con los atributos del atajo.<\/p>\n<p>Dado que el resultado final es un elemento de bot\u00f3n, sus atributos HTML como <strong>href<\/strong>, <strong>id<\/strong>, <strong>class<\/strong>, <strong>target<\/strong> &#038; <strong>label pueden<\/strong> ser utilizados para personalizarlo con facilidad.<\/p>\n<p>Puede usar los atributos <strong>id<\/strong> y <strong>class<\/strong> para dar estilo al bot\u00f3n ya que ambos son selectores comunes de CSS.<\/p>\n<p>No voy a envolver mi funci\u00f3n de controlador aqu\u00ed para mantener las cosas simples de explicar.<\/p>\n<pre><code class=\"language-php\">\/**\n * [cta_button] returns the HTML code for a CTA Button.\n * @return string Button HTML Code\n*\/\n\nadd_shortcode( 'cta_button', 'salcodes_cta' );\n\nfunction salcodes_cta( $atts ) {\n $a = shortcode_atts( array(\n 'link' =&gt; '#',\n 'id' =&gt; 'salcodes',\n 'color' =&gt; 'blue',\n 'size' =&gt; '',\n 'label' =&gt; 'Button',\n 'target' =&gt; '_self'\n ), $atts );\n $output = '&lt;p&gt;&lt;a href=\"' . esc_url( $a['link'] ) . '\" id=\"' . esc_attr( $a['id'] ) . '\" class=\"button ' . esc_attr( $a['color'] ) . ' ' . esc_attr( $a['size'] ) . '\" target=\"' . esc_attr($a['target']) . '\"&gt;' . esc_attr( $a['label'] ) . '&lt;\/a&gt;&lt;\/p&gt;';\n return $output;\n}<\/code><\/pre>\n<p>Woah, hay mucho que desempacar aqu\u00ed. Le explicar\u00e9 l\u00ednea por l\u00ednea, para que pueda entender c\u00f3mo funciona.<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Hemos cubierto la funci\u00f3n<strong><em> add_shortcode()<\/em><\/strong> y su funcionamiento en la secci\u00f3n anterior.<\/li>\n<li><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/shortcode_atts\/\"><em>shortcode_atts()<\/em><\/a> es una funci\u00f3n de WordPress que combina los atributos de los shortcodes de usuario con atributos conocidos. Rellene los valores por defecto cuando es necesario (que tambi\u00e9n puede configurar usted mismo). El resultado ser\u00e1 un array que contiene cada tecla de los atributos conocidos, fusionados con los valores de los atributos de los atajos definidos por el usuario.<\/li>\n<li>Dentro de la funci\u00f3n de manejo de shortcodes, definimos una variable (<strong>$a<\/strong>) y la asignamos al array devuelto por <em>shortcode_atts()<\/em>. Asignamos a los atributos sus valores por defecto con la sintaxis: <strong>&#8216;atributo&#8217; =&gt; &#8216;valor por defecto&#8217;. <\/strong>Por ejemplo, en el c\u00f3digo anterior, estamos estableciendo el valor por defecto del atributo label a Button con la sintaxis <strong>&#8216;label&#8217; =&gt; &#8216;Button&#8217;.<\/strong><\/li>\n<li>Podemos extraer los valores de cada clave de atributo con la sintaxis de PHP para matrices: <strong>$a[\u2018attribute\u2019]<\/strong>.<\/li>\n<li>La variable<strong> $output<\/strong> almacena el c\u00f3digo HTML del elemento bot\u00f3n (&lt;a&gt; etiqueta con clase &#8216;bot\u00f3n&#8217;). Es la cuerda que finalmente es devuelta por la funci\u00f3n.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Si desea establecer el enlace predeterminado como la URL de la p\u00e1gina de inicio del sitio, puede utilizar la funci\u00f3n <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/home_url\/\">home_url()<\/a> de WordPress.<\/p>\n<p>Intentemos usar el atajo tal cual, sin atributos definidos, y veamos qu\u00e9 es lo que sale.<\/p>\n<figure id=\"attachment_63392\" aria-describedby=\"caption-attachment-63392\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63392 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/estoy-anadiendo-codigo-corto-widget-texto-barra-lateral-probarlo.png\" alt=\"Estoy a\u00f1adiendo el c\u00f3digo corto a un widget de texto de la barra lateral para probarlo.\" width=\"1100\" height=\"578\"><figcaption id=\"caption-attachment-63392\" class=\"wp-caption-text\">Estoy a\u00f1adiendo el shortcode a un widget de texto de la barra lateral para probarlo.<\/figcaption><\/figure>\n<p>Si se pregunta para qu\u00e9 sirven los corchetes dobles (<strong>[[<\/strong>cta_button<strong>]]<\/strong>), se llaman atajos <a href=\"https:\/\/codex.wordpress.org\/Shortcode#Escaping_Shortcodes\">de escape<\/a>. Le ayudan a imprimir cualquier shortcode registrado en su sitio como texto regular, como en la imagen de abajo.<\/p>\n<figure id=\"attachment_64725\" aria-describedby=\"caption-attachment-64725\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64725 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/shortcode-boton-cta.jpg\" alt=\"Salida del shortcode del Bot\u00f3n CTA mostrando que funciona perfectamente como se espera\" width=\"1100\" height=\"522\"><figcaption id=\"caption-attachment-64725\" class=\"wp-caption-text\">Salida del shortcode del Bot\u00f3n CTA mostrando que funciona perfectamente como se espera<\/figcaption><\/figure>\n<figure id=\"attachment_63390\" aria-describedby=\"caption-attachment-63390\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63390 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/salida-html-oton-cta-atributos.png\" alt=\"Salida HTML del Bot\u00f3n CTA sin atributos\" width=\"1100\" height=\"432\"><figcaption id=\"caption-attachment-63390\" class=\"wp-caption-text\">Salida HTML del Bot\u00f3n CTA sin atributos<\/figcaption><\/figure>\n<p>Los usuarios pueden personalizar el tama\u00f1o y el color del bot\u00f3n con el atajo. Ya hemos establecido sus valores por defecto en la funci\u00f3n del handler, pero tenemos que <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_enqueue_style\/\">registrar y encolar la hoja de estilos<\/a> a la lista de recursos disponibles. Esta hoja de estilo deber\u00eda tener todas las clases definidas en el shortcode.<\/p>\n<p>Tambi\u00e9n puede establecer estas clases en la hoja de estilo global de su tema, pero se recomienda cargarlas por separado. Esto asegura que aunque <a href=\"https:\/\/kinsta.com\/es\/blog\/cambiar-tema-wordpress\/\">cambie<\/a> o actualice <a href=\"https:\/\/kinsta.com\/es\/blog\/como-actualizar-tema-de-wordpress\/\">su tema de WordPress<\/a>, estas clases seguir\u00e1n carg\u00e1ndose junto con el shortcode.<\/p>\n<pre><code class=\"language-php\">\/** Enqueuing the Stylesheet for the CTA Button *\/\n\nfunction salcodes_enqueue_scripts() {\n global $post;\n if( is_a( $post, 'WP_Post' ) && has_shortcode( $post-&gt;post_content, 'cta_button') ) {\n wp_register_style( 'salcodes-stylesheet',\u00a0 plugin_dir_url( __FILE__ ) . 'css\/style.css' );\n\u00a0 \u00a0  wp_enqueue_style( 'salcodes-stylesheet' );\n }\n}\nadd_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');<\/code><\/pre>\n<p>La funci\u00f3n <strong><em>salcodes_enqueue_scripts()<\/em><\/strong> define la variable global<strong> $post<\/strong>, y luego confirma dos condiciones mediante:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong><em>is_a()<\/em><\/strong>: comprueba si <strong>$post<\/strong> es una instancia del objeto<strong> WP_Post<\/strong>. Se refiere a todos los tipos de post en WordPress.<\/li>\n<li><strong><em>has_shortcode()<\/em><\/strong>: comprueba si el contenido del post contiene el atajo <strong>[cta_button]<\/strong>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Si ambas condiciones son verdaderas, la funci\u00f3n registra y pone en cola la hoja de estilo <strong>style.css <\/strong>incluida en la carpeta <strong>CSS<\/strong>. La funci\u00f3n <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/plugin_dir_url\/\"><em>plugin_dir_url( $fichero )<\/em><\/a> facilita la obtenci\u00f3n de la URL del directorio del plugin.<\/p>\n<p>No le mostrar\u00e9 el c\u00f3digo CSS aqu\u00ed, pero puede encontrarlo en el c\u00f3digo fuente enlazado al final de esta secci\u00f3n.<\/p>\n<p>Finalmente, probemos el atajo <strong>[cta_button]<\/strong> a\u00f1adi\u00e9ndolo al contenido del post:<\/p>\n<figure id=\"attachment_63389\" aria-describedby=\"caption-attachment-63389\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63389 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/fijate-atributos-personalizados.png\" alt=\"F\u00edjate en los atributos personalizados de enlace, color, tama\u00f1o y etiqueta\" width=\"1100\" height=\"238\"><figcaption id=\"caption-attachment-63389\" class=\"wp-caption-text\">F\u00edjese en los atributos personalizados de enlace, color, tama\u00f1o y etiqueta.<\/figcaption><\/figure>\n<p>La imagen de abajo muestra c\u00f3mo se ve el Bot\u00f3n CTA en la parte delantera:<\/p>\n<figure id=\"attachment_63388\" aria-describedby=\"caption-attachment-63388\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63388 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/boton-cta-tiene-url-color-tamano-etiqueta.png\" alt=\"El Bot\u00f3n CTA ahora tiene una nueva URL, color, tama\u00f1o y etiqueta.\" width=\"1100\" height=\"238\"><figcaption id=\"caption-attachment-63388\" class=\"wp-caption-text\">El Bot\u00f3n CTA ahora tiene una nueva URL, color, tama\u00f1o y etiqueta.<\/figcaption><\/figure>\n<p>Ahora que ha aprendido a definir atributos personalizados y a incluir estilos, puede a\u00f1adir otras funciones al shortcode del Bot\u00f3n CTA. Por ejemplo, puede dar a sus usuarios la opci\u00f3n de a\u00f1adir animaciones, efectos de vuelo y otros estilos de botones.<\/p>\n<h3>Ejemplo 3: Shortcode Utilizando el Contenido $<\/h3>\n<p>Para nuestro ejemplo final, construyamos un atajo de cierre llamado <strong>[boxed]<\/strong> que muestra cualquier contenido entre sus etiquetas en una caja con t\u00edtulos coloridos.<\/p>\n<p>Comencemos registrando el atajo y definiendo su funci\u00f3n de manejador.<\/p>\n<pre><code class=\"language-php\">\/**\n * [boxed] returns the HTML code for a content box with colored titles.\n * @return string HTML code for boxed content\n*\/\n\nadd_shortcode( 'boxed', 'salcodes_boxed' );\n\nfunction salcodes_boxed( $atts, $content = null, $tag = '' ) {\n $a = shortcode_atts( array(\n 'title' =&gt; 'Title',\n 'title_color' =&gt; 'white',\n 'color' =&gt; 'blue',\n ), $atts );\n \n $output = '&lt;div class=\"salcodes-boxed\" style=\"border:2px solid ' . esc_attr( $a['color'] ) . ';\"&gt;'.'&lt;div class=\"salcodes-boxed-title\" style=\"background-color:' . esc_attr( $a['color'] ) . ';\"&gt;&lt;h3 style=\"color:' . esc_attr( $a['title_color'] ) . ';\"&gt;' . esc_attr( $a['title'] ) . '&lt;\/h3&gt;&lt;\/div&gt;'.'&lt;div class=\"salcodes-boxed-content\"&gt;&lt;p&gt;' . esc_attr( $content ) . '&lt;\/p&gt;&lt;\/div&gt;'.'&lt;\/div&gt;';\n \n return $output;\n}<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$content = null<\/strong> : registra el c\u00f3digo abreviado como un tipo de cierre. Puede usar la variable<strong> $content<\/strong> dentro de la funci\u00f3n de su handler para cambiar su salida como quiera.<\/li>\n<li><strong>$tag = \u00bb<\/strong> : esto define la variable<strong> $tag del atajo<\/strong>. No es necesario en este ejemplo, pero es una buena pr\u00e1ctica incluirlo.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>En este ejemplo, modificamos el contenido utilizando estilos CSS en l\u00ednea.<\/p>\n<p>Los estilos de las clases que se utilizan dentro del atajo se registran y se ponen en cola como hicimos en el ejemplo anterior del atajo.<\/p>\n<p>Pero el hecho de tener dos shortcode que usan la misma hoja de estilo significa que tiene que cargarla si se usa cualquiera de ellos. Por lo tanto, vamos a actualizar la funci\u00f3n<strong><em> salcodes_enqueue_scripts()<\/em><\/strong>:<\/p>\n<pre><code class=\"language-php\">\/** Enqueuing the Stylesheet for Salcodes *\/\n\nfunction salcodes_enqueue_scripts() {\n global $post;\n $has_shortcode = has_shortcode( $post-&gt;post_content, 'cta_button' ) || has_shortcode( $post-&gt;post_content, 'boxed' );\n if( is_a( $post, 'WP_Post' ) && $has_shortcode ) {\n wp_register_style( 'salcodes-stylesheet',\u00a0 plugin_dir_url( __FILE__ ) . 'css\/style.css' );\n\u00a0 \u00a0  wp_enqueue_style( 'salcodes-stylesheet' );\n }\n}\nadd_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$has_shortcode<\/strong>: una variable definida por el usuario que comprueba si alguno de los shortcode existe en la p\u00e1gina\/correo. El || (operador OR) lo hace posible.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Ahora, tomemos nuestro atajo <strong>[boxed]<\/strong> para dar una vuelta.<\/p>\n<figure id=\"attachment_63386\" aria-describedby=\"caption-attachment-63386\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63386 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/anade-codigo-abreviado-junto-titulo-atributos.png\" alt=\"A\u00f1ade el c\u00f3digo abreviado en caja junto con un t\u00edtulo, color_t\u00edtulo y atributos de color.\" width=\"1100\" height=\"316\"><figcaption id=\"caption-attachment-63386\" class=\"wp-caption-text\">A\u00f1ada el c\u00f3digo abreviado en caja junto con un t\u00edtulo, color_t\u00edtulo y atributos de color.<\/figcaption><\/figure>\n<p>La siguiente captura de pantalla muestra la salida que obtenemos.<\/p>\n<figure id=\"attachment_63385\" aria-describedby=\"caption-attachment-63385\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63385 size-full\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2019\/12\/bonita-dificil-conseguir-despues-todo.png\" alt=\"\u00a1Una caja bonita no es tan dif\u00edcil de conseguir despu\u00e9s de todo!\" width=\"1100\" height=\"316\"><figcaption id=\"caption-attachment-63385\" class=\"wp-caption-text\">\u00a1Una caja bonita no es tan dif\u00edcil de conseguir despu\u00e9s de todo!<\/figcaption><\/figure>\n<p>Ahora que ha aprendido a hacer sus propios atajos, puede pensar fuera del\u00a0 <strong>[box]<\/strong> y darles su propio giro. No se olvide de compartir sus creaciones con nosotros!<\/p>\n<p>Si quiere, puede descargar el c\u00f3digo fuente del Shortcode Plugin desde <a href=\"https:\/\/github.com\/SalmanRavoof\/salcodes\">aqu\u00ed<\/a>.<\/p>\n<h2>Los Shortcodes de WordPress: Pros y Contras<\/h2>\n<h3>Los Pros<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Los shortcodes simplifican la adici\u00f3n de caracter\u00edsticas complejas en los sitios de WordPress. Puede a\u00f1adir casi cualquier cosa escribiendo una sola l\u00ednea de c\u00f3digo.<\/li>\n<li>Los shortcodes automatizan el flujo de trabajo de desarrollo. Eliminan la necesidad de escribir scripts complejos cada vez que se desea insertar una determinada caracter\u00edstica.<\/li>\n<li>Los shortcodes son m\u00e1s f\u00e1ciles de usar que a\u00f1adir c\u00f3digo HTML o scripts PHP.<\/li>\n<li>Los shortcodes pueden ser incluidos dentro de los plugins. Incluso si actualiza WordPress o cambia\/actualiza su tema, los shortcodes seguir\u00e1n siendo v\u00e1lidos y continuar\u00e1n funcionando como antes.<\/li>\n<li>La agrupaci\u00f3n de los shortcodes dentro de los plugins hace que sean f\u00e1ciles de usar en varios sitios web de WordPress. Si es un desarrollador que maneja muchos sitios, tener todos sus atajos personalizados listos para usar es un salvavidas.<\/li>\n<li>Dado que los atajos tambi\u00e9n aceptan atributos, los usuarios pueden modificar c\u00f3mo se comporta el mismo atajo con s\u00f3lo alterar sus opciones de atributos.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Los Contras<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Los shortcodes no son intuitivos de usar para el usuario final, especialmente si muchos de ellos se usan en una p\u00e1gina. En estos casos, son m\u00e1s adecuados para los desarrolladores.<\/li>\n<li>Es dif\u00edcil saber lo que hace un atajo con s\u00f3lo mirarlo. El equipo central de WordPress los ha llamado acertadamente \u00abc\u00f3digos de incrustaci\u00f3n <a href=\"https:\/\/developer.wordpress.org\/block-editor\/contributors\/design\/\">de carne misteriosa<\/a>\u00bb por esta misma raz\u00f3n.<\/li>\n<li>Los shortcodes que vienen empaquetados con los temas dejar\u00e1n de funcionar si cambia de tema.<\/li>\n<li>Los shortcodes son ambiguos en cuanto a su sintaxis. Por ejemplo, algunos de ellos admiten el cierre opcional, por lo que puede utilizarlos como autocierre o cierre o incluso ambos si est\u00e1n anidados. Puede adivinar c\u00f3mo puede volverse s\u00faper confuso s\u00faper r\u00e1pido.<\/li>\n<li>Los shortcodes pueden romper el HTML debido a etiquetas conflictivas o problemas de interoperabilidad. Nunca es bueno verlos en la fachada de ning\u00fan sitio.<\/li>\n<li>Los shortcodes a\u00f1aden una carga extra a su servidor. A medida que aumenta el n\u00famero de accesos directos en su p\u00e1gina\/posts, tambi\u00e9n aumenta esta carga. Demasiados shortcodes pueden hacer que su sitio web se rastree (por ejemplo, el resultado de la mayor\u00eda de los <a href=\"https:\/\/kinsta.com\/es\/blog\/constructores-pagina-wordpress\/\">creadores de p\u00e1ginas<\/a>).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Shortcodes y Bloques de Gutenberg<\/h2>\n<p>La introducci\u00f3n de Gutenberg redujo la conveniencia de las deficiencias. Los usuarios pueden ahora a\u00f1adir <a href=\"https:\/\/wordpress.org\/gutenberg\/\">bloques directamente desde la interfaz del editor<\/a>, en lugar de tener que ocuparse de las marcas de los shortcodes, sin importar lo simple que sea.<\/p>\n<p>Y si quiere a\u00f1adir shortcodes, Gutenberg incluso viene con un bloque dedicado a a\u00f1adir shortcodes. <em>Los bloques son los nuevos shortcodes.<\/em><\/p>\n<blockquote><p>\u00abSi pudo hacerlo con un shortcode, puede hacerlo como un bloque.\u00bb &#8211; <a href=\"https:\/\/wordpress.org\/support\/topic\/shortcodes-vs-blocks-2\/#post-11577526\">James Huff, Ingeniero de Felicidad de Automattic<\/a><\/p><\/blockquote>\n<p>Eso explica por qu\u00e9 todos los shortcodes <a href=\"https:\/\/calderaforms.com\/2019\/01\/convert-shortcode-gutenberg-block\/\">populares se est\u00e1n convirtiendo en bloques<\/a>. Muchos desarrolladores de WordPress se han inclinado por hacer que sus productos y servicios funcionen exclusivamente con el editor de bloques (Gutenberg).<\/p>\n<p>Pero eso no significa que sea el fin del mundo para los shortcodes. El equipo central de WordPress ha prometido muchas mejoras en el editor de bloques, que se pueden ver en <a href=\"https:\/\/kinsta.com\/es\/blog\/tema-twenty-twenty\/\">Twenty Twenty<\/a>, pero hasta entonces, \u00a1los shortcodes est\u00e1n aqu\u00ed para quedarse!<\/p>\n\n<h2>Resumen<\/h2>\n<p>A\u00f1adir funcionalidad compleja en cualquier lugar de su sitio de WordPress es f\u00e1cil con los shortcodes. Ofrecen a los usuarios etiquetas f\u00e1ciles de escribir que se pueden utilizar sin preocuparse por el uso de c\u00f3digos complejos.<\/p>\n<p>Aunque puede que no haya atajos en la vida, seguro que hay muchos shortcodes para usar en WordPress. Mis favoritos son <a href=\"https:\/\/wordpress.org\/plugins\/shortcodes-ultimate\/\">Shortcodes Ultimate<\/a> y Shortcodes <a href=\"https:\/\/wordpress.org\/plugins\/wc-shortcodes\/\">de Angie Makes<\/a>.<\/p>\n<p>Y si no puede encontrar el que busca, puede crear uno usted mismo.<\/p>\n<p>Incluso puede tomar un atajo para crear su shortcode personalizado usando el <a href=\"https:\/\/wordpress.org\/plugins\/shortcoder\/\">plugin Shortcoder<\/a>. Se encarga de todo lo esencial para usted. Y recuerde: la vida es corta, \u00a1utilice los shortcodes!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los shortcodes de WordPress son una caracter\u00edstica poderosa para hacer cosas geniales con poco esfuerzo. Puede hacer casi cualquier cosa con ellos. Con los shortcodes, la &#8230;<\/p>\n","protected":false},"author":117,"featured_media":30068,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[660,611],"topic":[1345],"class_list":["post-30046","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-shortcodes","tag-wptips","topic-desarrollo-wordpress"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear sus Propios)<\/title>\n<meta name=\"description\" content=\"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)\" \/>\n<meta property=\"og:description\" content=\"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinsta.es\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-10T14:10:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-19T14:16:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Salman Ravoof\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@salmanravoof\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Salman Ravoof\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"24 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\"},\"author\":{\"name\":\"Salman Ravoof\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\"},\"headline\":\"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)\",\"datePublished\":\"2020-01-10T14:10:19+00:00\",\"dateModified\":\"2025-02-19T14:16:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\"},\"wordCount\":4683,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\",\"keywords\":[\"shortcodes\",\"wptips\"],\"articleSection\":[\"Desarrollo de WordPress\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\",\"url\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\",\"name\":\"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear sus Propios)\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\",\"datePublished\":\"2020-01-10T14:10:19+00:00\",\"dateModified\":\"2025-02-19T14:16:39+00:00\",\"description\":\"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Desarrollo WordPress\",\"item\":\"https:\/\/kinsta.com\/es\/secciones\/desarrollo-wordpress\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/es\/#website\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluciones de alojamiento premium, r\u00e1pidas y seguras\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/es\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinsta.es\/\",\"https:\/\/x.com\/Kinsta_ES\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\",\"name\":\"Salman Ravoof\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"caption\":\"Salman Ravoof\"},\"description\":\"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.\",\"sameAs\":[\"https:\/\/salmanravoof.com\",\"https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/\",\"https:\/\/x.com\/salmanravoof\"],\"url\":\"https:\/\/kinsta.com\/es\/blog\/author\/salmanravoof\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear sus Propios)","description":"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)","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:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/","og_locale":"es_ES","og_type":"article","og_title":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)","og_description":"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)","og_url":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinsta.es\/","article_published_time":"2020-01-10T14:10:19+00:00","article_modified_time":"2025-02-19T14:16:39+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","type":"image\/jpeg"}],"author":"Salman Ravoof","twitter_card":"summary_large_image","twitter_description":"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)","twitter_image":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","twitter_creator":"@salmanravoof","twitter_site":"@Kinsta_ES","twitter_misc":{"Escrito por":"Salman Ravoof","Tiempo de lectura":"24 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/"},"author":{"name":"Salman Ravoof","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987"},"headline":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)","datePublished":"2020-01-10T14:10:19+00:00","dateModified":"2025-02-19T14:16:39+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/"},"wordCount":4683,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","keywords":["shortcodes","wptips"],"articleSection":["Desarrollo de WordPress"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/","url":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/","name":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear sus Propios)","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","datePublished":"2020-01-10T14:10:19+00:00","dateModified":"2025-02-19T14:16:39+00:00","description":"Los shortcodes de WordPress hacen su vida m\u00e1s f\u00e1cil. Aprenda lo que son y c\u00f3mo crear sus shortcodes personalizados de WordPress con esta gu\u00eda (y ejemplos de c\u00f3digo)","breadcrumb":{"@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#primaryimage","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2020\/01\/codigos-cortos-wordpress.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/es\/blog\/codigos-cortos-wordpress\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/es\/"},{"@type":"ListItem","position":2,"name":"Desarrollo WordPress","item":"https:\/\/kinsta.com\/es\/secciones\/desarrollo-wordpress\/"},{"@type":"ListItem","position":3,"name":"La \u00daltima Gu\u00eda de Shortcodes de WordPress (con Ejemplos para Crear Sus Propios)"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/es\/#website","url":"https:\/\/kinsta.com\/es\/","name":"Kinsta\u00ae","description":"Soluciones de alojamiento premium, r\u00e1pidas y seguras","publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/es\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinsta.es\/","https:\/\/x.com\/Kinsta_ES","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987","name":"Salman Ravoof","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","caption":"Salman Ravoof"},"description":"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.","sameAs":["https:\/\/salmanravoof.com","https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/","https:\/\/x.com\/salmanravoof"],"url":"https:\/\/kinsta.com\/es\/blog\/author\/salmanravoof\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/30046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/users\/117"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/comments?post=30046"}],"version-history":[{"count":9,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/30046\/revisions"}],"predecessor-version":[{"id":66980,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/30046\/revisions\/66980"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/en"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/es"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/pt"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/de"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/nl"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/it"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/jp"},{"embeddable":true,"hreflang":"da","title":"Danish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/dk"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/fr"},{"embeddable":true,"hreflang":"sv","title":"Swedish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/translations\/se"},{"href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/30046\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media\/30068"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media?parent=30046"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/tags?post=30046"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/topic?post=30046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}