whatsapp
keyboard_arrow_down Contatti

Sabato

19

Marzo 2022

come Creare shortcode per Wordpress senza errori

Come creare shortcode per WordPress senza errori

  1. blog Come creare shortcode per WordPress senza errori
event_available
schedule

Come creare shortcode per WordPress? In questa guida vedremo come si crea uno shortcode per il CMS più utilizzato nel mondo senza errori.

Uno degli errori più comuni quando si crea uno shortcode personalizzato è

Fatal error: Cannot redeclare function my_function

Ma partiamo dall’inizio:

Tempo richiesto: 30 minuti

Come creare uno shortcode in WordPress?

  1. Apri il file function.php del tuo plugin o tema

  2. Inserisci il codice qui sotto

  3. Salva e carica il file sul server

  4. Attenzione alle funzioni duplicate

  5. Come riportare correttamente il contenuto degli shortcode

help_outline

Come creare uno shortcode in WordPress?

Uno shortcode non è nient’altro che una funzione in PHP che restituisce un valore, una funzione oppure stampa a video un contenuto per l’utente.

Il codice completo per creare uno shortcode è il seguente:

<?php 
function my_function() {
  ob_start();
  
    //inserisci qui il tuo codice

  $content = ob_get_clean();
  return $content;
}
add_shortcode('my_shortcode_name', 'my_function');
?>

Analizziamo la funzione:

“my_function()” è il nome della tua funzione personalizzata, puoi scegliere quello che vuoi a patto che sia univoco, cioè che non ci sia un’altra funzione con lo stesso nome in tutti i file del tuo sito web.

Per evitare conflitti io utilizzo un prefisso di tre lettere prima di tutte le funzioni che sviluppo così da ridurre la probabilità di funzioni duplicate.
Il risultato è simile a “prefisso_my_function”.

Evitare errori per contenuti duplicati

code

“ob_start()” e “ob_get_clean()” sono funzioni di output del core di php che recuperano il contenuto della funzione, lo cancellano e lo restituiscono solo al momento dell’output, cioè nel punto esatto in cui viene posizionato lo shortcode nella pagina.

“return”: gli shortcode vengono prima dichiarati nel tuo file php, poi aggiunti al core di WordPress e successivamente il loro contenuto viene stampato nel punto della pagina in cui sono dichiarati.

Il WordPress Codex consiglia vivamente di utilizzare l’istruzione return al posto di echo per evitare che il contenuto venga mostrato in posizioni non corrette.

Utilizzare echo potrebbe duplicare il tuo shortcode nella pagina di modifica di un visual composer o, peggio, nel frontend.

code

Aggiungere lo shortcode nel core di WordPress

Ora che hai scritto la tua funzione dovrai aggiungere il tuo shortcode al core di WordPress, per farlo usiamo la funzione add_shortcode();

Questa funzione accetta due parametri di tipo stringa:

add_shortcode('my_shortcode_name', 'my_function');

Il primo parametro (my_shortcode_name) è il nome del tuo shortcode, quello che utilizzerai nelle pagine del sito per richiamare la funzione che hai creato.

Il codex di WordPress impone l’utilizzo di sole lettere minuscole nei nomi degli shortcode, accetta anche trattini bassi e numeri ma ne sconsiglia l’uso.

Il secondo parametro è il nome della funzione da eseguire, quindi se la tua funzione si chiama

“function my_function() { /* codice da eseguire */ }”

dovrai inserire come parametro”my_function” senza le parentesi tonde.

Con questa funzione potrai richiamare il tuo shortcode in qualsiasi file php del tuo sito e anche in ogni pagina o articolo.

Richiamare lo shortcode creato

code

Per visualizzare il contenuto del tuo shortcode dovrai semplicemente inserire il nome che gli hai dato fra due parentesi quadre, in questo modo:

[my_shortcode_name]

Questa sintassi effettua l’ echo dei contenuti della funzione nel punto esatto in cui viene inserito all’interno della pagina.

Questa sintassi può essere utilizzata solo all’interno dell’editor di WordPress, come elemento shortcode di Gutenberg o di un altro visual composer.

Per utilizzare il tuo shortcode in altri file .php puoi semplicemente richiamare la funzione che genera il tuo shortcode, in questo caso useremo

echo my_function();

oppure puoi utilizzare la funzione del core di WordPress do_shortcode() in questo modo:

echo do_shortcode('[my_shortcode_name]');

Questa funzione accetta due parametri:
il primo è il nome dello shortcode da richiamare (compreso di parentesi quadre), il secondo è un valore booleano non obbligatorio impostato di default su false.

help_outline

Dove inserire il codice?

Per creare un nuovo shortcode in WordPress dovrai inserire il codice in un file .php del tema in uso oppure in un plugin.

Non modificare mai il codice sorgente dei temi o dei plugin perchè potresti causare errori al tuo sito web. In ogni caso, il codice che aggiungi andrebbe perso al primo aggiornamento del tema o del plugin che hai modificato.

Se hai intenzione di creare diversi shortcode per il tuo sito web allora ti consiglio un tuo plugin personalizzato e di dedicare un file php per ogni shortcode che vorrai aggiungere. Ricorda che i file degli shortcode dovranno essere inclusi all’interno del file principale del tuo plugin.

Se invece vuoi creare uno/due shortcode al massimo allora ti consiglio di inserirli nel file functions.php del tuo tema child.

Creare attributi per gli shortcode

code

Per rendere più dinamici gli shortcode, WordPress mette a disposizione gli attributi, cioè delle variabili che ti consentono di passare dei valori direttamente alla funzione che genera il tuo shortcode.

Per sapere di cosa si tratta perché non dare un’occhiata alla nostra guida dedicata?

Creare shortcode con attributi in WordPress

Perchè non dai uno sguardo alla documentazione ufficiale di wordpress?

Ti è piaciuto questo articolo?

favorite thumb_down
Autore articolo

Fabio

Sono un terribile realista. Pratico e determinato ma anche un grande sognatore, ecco perché do continuamente vita a nuovi progetti online e non. Nel 2019 ho fondato Eureka Web proprio per rendere possibile tutto questo. Insieme possiamo realizzare la tua idea!


Visita il sito
library_books

Leggi anche

convertire oggetti in array php
Scopri
come usare jquery in wordpress senza errori
Scopri
come creare shortcode con attributi wordpress
Scopri

Contattami

perm_identity
alternate_email
phonelink_ring
message

Il tuo messaggio è stato inviato con successo!
Ti risponderemo a breve

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

message
perm_identity
alternate_email

keyboard_arrow_up