email

get_theme_mod() per ottenere variabili da personalizza di WordPress

Ti trovi in:
  1. blog get_theme_mod() per ottenere variabili da personalizza di WordPress

Pubblicato il , aggiornato il 9 Novembre 2021

Come ottengo le variabili della schermata personalizza del tema WordPress senza usare un plugin? Molto semplice, ti basterà utilizzare le funzioni get_theme_mod() per ottenere variabili singolarmente oppure get_theme_mods() per ottenerle tutte.

Qualsiasi tema WordPress salva nel database gli input dell’utente effettuati dalla schermata personalizza, per poi recuperarle con le due funzioni spiegate in precedenza.

Se vuoi sapere come modificare o aggiungere controlli alla schermata personalizza ti lascio il link a questa breve guida che ho scritto per te.

Sia che tu stia sviluppando un tema o personalizzando uno esistente con un child, avrai bisogno di capire a fondo queste due funzioni, iniziamo subito:

code

get_theme_mod() per ottenere variabili

Questa funzione recupera gli elementi salvati nel database attraverso la schermata personalizza di WordPress, precisamente nella tabella wp_options e nella cella con nome “theme_mods_nome-tema”.

Essa accetta due parametri:

get_theme_mod( $name, $default);
  • $name è il nome dell’oggetto da recuperare e deve essere una stringa
  • $default è il valore da restituire nel caso in cui nel database non sia salvato alcun valore per il nome inserito. (deve essere una stringa ed è opzionale)

Questa funzione restituisce una stringa contenente il valore richiamato e può essere modificato dall’amministratore tramite la schermata personalizza di WordPress.

code

Come ottenere tutte le variabili del tema

Se vuoi ottenere un elenco di tutte le variabili del tema che possono essere modificate attraverso la schermata personalizza allora avrai bisogno della funzione get_theme_mods();

get_theme_mods();

Questa funzione non accetta alcun parametro perché restituisce indistintamente tutte le opzioni del tema attivo in questo momento in un array.

Se vuoi stamparle a video puoi utilizzare un ciclo foreach oppure un print_r()

print_r(get_theme_mods()); //oppure:
  foreach (get_theme_mods() as $key => $value) {
    echo $key.': '.$value.'<br><br>';
  }

Ora ti basterà utilizzare la funzione get_theme_mod() per recuperare il valore desiderato.

code

get_theme_mod() stampa un valore vuoto

Cosa fare se la funzione get_theme_mod() stampa un valore vuoto?

È molto semplice, il motivo è che i controlli dalla schermata personalizza non sono ancora stati modificati.

Per risolvere questo problema dovrai impostare un valore di default manualmente in questo modo:

get_theme_mod(‘nome-variabile-del-tema’, ‘valore-di-default’);

Ti lascio il link alla documentazione ufficiale di WordPress per ogni dubbio

Contattaci!

Preventivo sempre gratuito

Fabio Fresia, fondatore e titolare di Eureka Web di Asti

perm_device_information366 - 400 9542       emailinfo@agenziawebeureka.it

perm_identity
alternate_email
phonelink_ring
message