Filtra la ricerca ...
Frase esatta
Categorie

Come visualizzare nel profilo utente WordPress tutti i campi user meta, compresi quelli di WooCommerce

Ciao e benvenuto. Se hai bisogno di chiarimenti sul codice, lascia un commento (no WhatsApp); ricorda però che non fornisco assistenza gratuita sugli articoli che ho scritto nè personalizzo il codice in modo gratuito, quindi se la tua richiesta va oltre il semplice "aiutino", se vuoi mi chiedi una consulenza a pagamento nella pagina contatti. Grazie della comprensione. Alessio

Oggi vediamo la funzion wp_get_current_user() , questa funzione ci permette di mostrare a video, per esempio in una pagina dedicata, tutti i campi user meta degli utenti registrati di WordPress e volento anche i campi di WooCommerce.

Cosa sono i user meta ?

Sono i campi che si vedono nella gestione utenti di WordPress, alcuni sono di default quando viene installato WordPress, altri invece possono essere aggiunti da altri plugin come WooCommerce, oppure ancora li possiamo aggiungere noi a piacimento, leggi come aggiungere user meta su WordPress con ACF.

Come far apparire user meta in una pagina WordPress

Passiamo subito al codice e poi lo spiego.

if(!function_exists(‘wp_get_current_user’)) { include(ABSPATH . “wp-includes/pluggable.php”); } : questa stringa di codice ci permette di correggere un piccolo bug di WordPress, infatti se non ci fosse questa riga avremmo  l’errore “Call to undefined function wp_get_current_user()“, questo perchè WP non riesce a trovare la funzione, invece in questo moto la includiamo, infatti tale funzione si trova nel file pluggable.php

ob_start(); : questa invece è una funzione nativa di PHP che in questo caso la utilizziamo perchè dopo tale funzione abbiao in output dell’html, quindi ovviamo all’errore comunque “header already sent by …

Quindi utilizzando la funzione di WP wp_get_current_user() inserendola in una variabile, $current_user = wp_get_current_user(); , posso poi andare a interrogare i vari campi user meta e printarli a video, $current_user->user_login

Come far apparire i user meta in una pagina dedicata ?

Come si può notare, alla fine del codice ho screato uno shortcode, add_shortcode(‘show_user_profile’,’user_profile’); , quindi se vogliamo mostrare il risultato dell’output semplicemente creiamo una pagina dedicata i ci inseriamo il codice [show_user_profile]

Come si trovano i user meta di WordPress

Qui c’è la guida ufficiale dei userdata https://codex.wordpress.org/Function_Reference/get_userdata

Come si trovano i user meta di WooCommerce

Qui la guida https://docs.woocommerce.com/document/tutorial-customising-checkout-fields-using-actions-and-filters/

Potrebbe interessarti anche ...

Hai bisogno di una consulenza, lo sviluppo di un plugin o vuoi incrementare le performance del tuo sito ?

2 commenti su “Come visualizzare nel profilo utente WordPress tutti i campi user meta, compresi quelli di WooCommerce”

  1. Salve Alessio,
    complimenti per i tuoi articoli!
    Una domanda: se io amplio i campi della tabella UserMeta con estensioni come WP Members, e credo un campo come ad esempio Codice Ateco, posso richiamare allo stesso modo il contenuto usando $current_user?
    Grazie

    Rispondi
    • Ciao Francesco,
      guarda non utilizzo quel plugin perchè di solito scrivo io il codice, ma a regola dovrebbe essere user meta, quindi presuma che basti conoscere l’id del meta che aggiungi e poi dovresti accederci usando $current_user, al massimo fai un print di tutti i meta e vedi come si chiama quello che hai aggiunto, puoi usare :

      $user_info = get_user_meta($current_user->ID);
      var_dump($user_info);

      Rispondi
  2. Io vorrei far mostrare a una pagina riservata e privata al cliente tutti i dati : (user, nominativo, email, cell, password)

    Ma in particolare mi servirebbe una stringa che permetta al cliente di cambiare la password senza passare dalla pagina di profilo wp.

    Cosa dovrei fare?
    Al momento uso Private Content per far si che ogni cliente possa avere una pagina privata.

    Rispondi
    • Ciao Emanuel, per quello che vuoi fare non ti serve Private Content, va fatto un plugin custom.
      Se vuoi contattami nella sezione contatti e ti faccio un preventivo.

      Rispondi
Se vuoi postare codice usa codeshare.io
Se vuoi postare uno screeshot usa postimages.org ed inserisci l'url nel commento.

Lascia un commento


Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Iscriviti e ricevi trucchi e guide

Inserisci la tua email per ricevere gli ultimi articoli dal blog.

Inserendo i tuoi dati confermi di aver letto ed essere d’accordo con la privacy policy.