Gli shortcode sono stati introdotti dal WordPress 2.5 e riportando la definizione presente sui Docs di WordPress
Introduced in WordPress 2.5 is the Shortcode API, a simple set of functions for creating macro codes for use in post content. For instance, the following shortcode (in the post/page content) would add a photo gallery into the page:
1 [gallery]
Come si utilizza:
Uno shortcode si inserisce nel post o nella pagina che si sta scrivendo ed esegue delle operazioni da noi programmate.
esempio:
1 2 3 4 | function hello_word_func(){ return echo"<h1>hello world!</h1>"; } add_shortcode('hello_word', 'hello_word_func'); |
inserendo nella pagina o nel post
1 | [hello_word] |
otterreno
hello world
Approfondiamo
La funzione che crea lo shortcode è
1 | <?php add_shortcode( $tag , $func ); ?> |
che riceve due parametri
$tag (stringa) è ciò che verrà utilizzato all’interno delle parentesi [] nel documento
$func (chiamta) è la funzione che verrà eseguita
le varie opzioni di inserimento di uno shortcode sono:
1 2 3 | [tag] [tag parametro1='valore1' parametro2="valore2"] [tag parametro="valore"]contenuto_tag[/tag] |
La prima l’abbiamo vista con l’esempio, ci permette di inserire un [tag] e far eseguire una funzione.
Con la seconda abbiamo la possibilità di passare dei valori alla funzione, vediamo come:
1 2 3 4 | function shortcode_func($attr) { return '<em>Valore del primo parametro: <strong>'.$attr['parametro1'].'</strong> , valore del secondo parametro: <strong>'.$attr['parametro2'].'</strong></em>'; } add_shortcode('tag', 'shortcode_func'); |
questa funzione ci restituisce:
Valore del primo parametro: valore1 , valore del secondo parametro: valore2
La terza possibilità ci permette di leggere il contenuto tra i tag, ecco il codice:
1 2 3 4 | function shortcode_func_2($attr, $content) { return "<em>Parametro: <strong>$attr['parametro1']</strong><br/>Contenuto: <strong>$content</strong></em>"; } add_shortcode('tag', 'shortcode_func_2'); |
Da questa funzione otteniamo:
Parametro: valore
Contenuto: contenuto_tag
Nota
Possiamo eseguire uno shortcode anche da codice php, inserendolo nel template di una pagina:
1 2 3 | <?php echo do_shortcode('[tag attr="value"]'); ?> |
Riferimenti
codex.wordpress.org/Shortcode_API
codex.wordpress.org/Function_Reference/add_shortcode
planetozh.com/blog/WordPress 2.5 ShortCodes API Overview
aaron.jorb.in/blog/WordPress Shortcodes – A how to by example

Sottoscrivi RSS Feed