X

Come tracciare le visualizzazioni di post e pagine per ID utente, data e ora

Snippet di IsItWP

Stai cercando un modo per tracciare le visualizzazioni di post e pagine per ID utente, data e ora? Sebbene probabilmente esista un plugin per questo, abbiamo creato un rapido snippet di codice che puoi utilizzare per tracciare le visualizzazioni di post e pagine per ID utente, data e ora in WordPress.

Innanzitutto, aggiungi wps_trackViewDates(); all'interno del loop del tuo file di template. Una volta aggiunto, lo snippet traccerà l'ID dell'utente che ha visualizzato un singolo post insieme alla data e all'ora in cui è stato visualizzato.

Puoi anche aggiungere un'opzione di scadenza che confronterà l'ora di scadenza con l'ora corrente e restituirà true quando l'ora di scadenza è minore. Questo è molto utile se desideri visualizzare un messaggio personalizzato in base a quando ciascun utente ha visualizzato il post. In questo caso, puoi vedere 'strtotime' con 20+ minuti alla scadenza. Visualizza 'strtotime' per ulteriori opzioni.

Puoi aggiungere un piccolo snippet alla fine chiamato wps_getViewCounts(); che restituirà semplicemente il numero di visualizzazioni uniche dei post.

Istruzioni:

Tutto quello che devi fare è aggiungere questo codice al file single.php del tuo tema:

function wps_trackViewDates(){
  global $post, $current_user;
  $data_key = '_utime';
  $utime = time();
  $data = get_post_meta($post->ID, $data_key, true);

  if(is_array($data)){

        if ( !in_array( $current_user->ID, $data ) ) {
            $data[$utime] = $current_user->ID;
            $data = array_unique($data, SORT_NUMERIC );
            update_post_meta($post->ID, $data_key, $data, false);
        }else{
            $saved_time = array_search($current_user->ID, $data);
            $expiry_time = strtotime("+20 minutes",$saved_time); // expires time
            if($expiry_time < $utime) return true;
        }

  }else{
    $data = array();
    $data[$utime] = $current_user->ID;
    add_post_meta($post->ID, $data_key, $data, false);
  }

}

function wps_getViewCounts(){
  global $post, $current_user;
  $data_key = '_utime';
  $data = get_post_meta($post->ID, $data_key, true);
  if(is_array($data)){ echo count($data); }
}

Per verificare se la scadenza è true, puoi aggiungere il seguente codice nel tuo file single.php.

/* USAGE */
if(wps_trackViewDates() == true){
       echo 'message when true';
}else{
       echo 'message when false';
}

Nota: Se questa è la prima volta che aggiungi snippet di codice in WordPress, consulta la nostra guida su come copiare / incollare correttamente snippet di codice in WordPress, in modo da non rompere accidentalmente il tuo sito.

Se ti è piaciuto questo snippet di codice, prendi in considerazione la possibilità di consultare i nostri altri articoli sul sito come: 25 migliori strumenti per freelance per far crescere un'attività e come salvare dati parziali di moduli in WordPress.

Commenti   Lascia una risposta

  1. Con questa funzione come si mostra all'amministratore l'ultimo post visitato da ogni utente?

    Grazie

    1. La funzione probabilmente dovrebbe essere modificata un po' per fare questo. Detto questo, potresti voler consultare: https://www.isitwp.com/install-google-analytics-wordpress-site/

  2. Scopri come tracciare le visualizzazioni di pagine WordPress per ID utente e ora 8 giugno 2015 alle 7:15

    [...] Snippet per gentile concessione di WP Snip [...]

  3. Con questa funzione come si mostra all'amministratore l'ultimo post visitato da ogni utente?

    Grazie

Aggiungi un commento

Siamo lieti che tu abbia scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra normativa sulla privacy e tutti i link sono nofollow. NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.

Checklist per il lancio di WordPress

La Guida Definitiva per il Lancio di WordPress

Abbiamo raccolto tutti gli elementi essenziali della checklist per il lancio del tuo prossimo sito web WordPress in un comodo ebook.
Sì, Inviami l'eBook Gratuito!