Buscar..


Sintaxis

  • add_shortcode ('your_short_code', 'your_function_name');

Parámetros

Parámetros Descripción y uso
$ etiqueta (cadena) (requerido) Etiqueta de código corto para buscar en el contenido de la publicación Predeterminado: Ninguno
$ func (se puede llamar) (requerido) Se engancha para ejecutarse cuando se encuentra el shortcode Predeterminado: Ninguno

Observaciones

IMPORTANTE: no utilice camelCase o UPPER-CASE para sus atributos

Puedes generar un shortcode con atributo aquí

Ejemplos de códigos cortos

Los códigos cortos de WordPress fueron introducidos en 2.5

Aquí viene un ejemplo de shortcode.

[button]

para usar shortcode directamente en el tema tienes que usar do_shortcode()

 <?php echo do_shortcode('[button]'); ?>

Para personalizar el botón, simplemente podríamos agregar algo como:

[button type="twitter"]

O para hacerlo aún mejor, podríamos usar un shortcode adjunto:

[button type="twitter"]Follow me on Twitter![/button]

Creando un shortcode de cierre automático

El código corto más simple es el de cierre automático. Vamos a crear un enlace simple a nuestra cuenta de Twitter y luego lo agregaremos en una publicación de blog. Todo el código va en functions.php , que se encuentra en /wp-content/themes/your-theme/ . Si no tienes uno, simplemente créalo y pon el código en él.

<?php 
function button_shortcode() {
return '<a href="http://twitter.com/rupomkhondaker" class="twitter-button">Follow me on Twitter!</a>"';
}
add_shortcode('button', 'button_shortcode'); 
?>

Uso: [button]

Creación de un shortcode de cierre automático con parámetros.

Creación de un shortcode de cierre automático con parámetros.

<?php
function button_shortcode( $type ) {

    extract( shortcode_atts( 
        array( 
            'type' => 'value'
         ), $type ) ); 

    // check what type user entered
    switch ($type) {

        case 'twitter':
            return '<a href="http://twitter.com/rupomkhondaker" class="twitter-button">Follw me on Twitter!</a>';
            break;

        case 'rss':
            return '<a href="http://example.com/rss" class="rss-button">Subscribe to the feed!</a>'
            break;
    }
}
add_shortcode( 'button', 'button_shortcode' );
?>

Ahora puede elegir qué botón mostrar al definir el tipo en su shortcode.

[button type="twitter"]
[button type="rss"]

Creando un shortcode adjunto

adjuntando shortcode

El código abreviado adjunto le permite incrustar contenido dentro de su código abreviado, como BBCode si alguna vez lo ha usado.

<?php
function button_shortcode( $attr, $content = null ) {
return '<a href="http://twitter.com/filipstefansson" class="twitter-button">' . $content . '</a>';
}
add_shortcode('button', 'button_shortcode');
?>

Para usar este código abreviado, incrusta el texto que desea usar así:

[button]Follow me on Twitter![/button]

Para mejorar aún más este botón, podríamos agregar parámetros como lo hicimos en el ejemplo anterior.

<?php
function button_shortcode( $atts, $content = null ) {
extract( shortcode_atts( array(
'account' => 'account',
 'style' => 'style'
 ), $atts ) );
return '<a href="http://twitter.com/' . esc_attr($account) . '" class="twitter-button ' . esc_attr($style) . '">' . $content . '</a>';
}
add_shortcode('button', 'button_shortcode');
?>

Uso:

[button account="rupomkhondaker" style="simple"]Follow me on Twitter![/button]

Shortcodes en Widgets

De forma predeterminada, WordPress no admite códigos cortos dentro de los Widgets de la barra lateral. Solo expande los códigos cortos dentro del contenido de una publicación, página o publicación personalizada. Para agregar soporte de shortcode a los widgets de la barra lateral, puede instalar un complemento o usar el siguiente código:

add_filter( 'widget_text', 'shortcode_unautop' );
add_filter( 'widget_text', 'do_shortcode' );

Es importante que estas líneas se agreguen en este orden. La primera línea evita que WordPress convierta los saltos de línea en etiquetas de párrafo, ya que esto evita que los códigos cortos funcionen. La segunda línea es la que hace que los shortcodes funcionen.



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow