X

Cum să urmărești vizualizările postărilor și paginilor după ID-ul utilizatorului, data și ora

Fragmente de IsItWP

Căutați o modalitate de a urmări vizualizările postărilor și paginilor după ID-ul utilizatorului, data și ora? Deși probabil există un plugin pentru asta, am creat o scurtă secțiune de cod pe care o puteți utiliza pentru a urmări vizualizările postărilor și paginilor după ID-ul utilizatorului, data și ora în WordPress.

Mai întâi, adăugați wps_trackViewDates(); în bucla fișierului șablon. Odată adăugat, fragmentul va urmări ID-ul utilizatorului care a vizualizat o postare individuală, împreună cu data și ora la care a fost vizualizată.

Puteți adăuga, de asemenea, o opțiune de expirare care va compara timpul de expirare cu timpul curent și va returna true, atâta timp cât timpul de expirare este mai mic. Acest lucru este destul de util dacă doriți să afișați un mesaj personalizat în funcție de momentul în care fiecare utilizator a vizualizat postarea. Puteți vedea „strtotime” în acest caz, cu 20+ minute până la expirare. Vizualizați „strtotime” pentru mai multe opțiuni.

Puteți adăuga o mică secțiune la sfârșit numită wps_getViewCounts(); care va returna pur și simplu numărul de vizualizări unice ale postărilor.

Instrucțiuni:

Tot ce trebuie să faceți este să adăugați acest cod în fișierul single.php al temei dvs.:

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); }
}

Pentru a verifica dacă expirarea este adevărată, puteți adăuga următorul cod în fișierul dvs. single.php.

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

Notă: Dacă este prima dată când adăugați secvențe de cod în WordPress, consultați ghidul nostru despre cum să copiați / lipiți corect secvențe de cod în WordPress, pentru a nu vă defecta accidental site-ul.

Dacă v-a plăcut acest fragment de cod, vă rugăm să luați în considerare vizualizarea altor articole de pe site, cum ar fi: 25 cele mai bune instrumente pentru freelanceri pentru a scala o afacere și cum să salvați date parțiale din formular în WordPress.

Comentarii   Lasă un răspuns

  1. Cu această funcție, cum arăți administratorului ultima postare vizitată de fiecare utilizator?

    Mulțumesc

    1. Funcția probabil ar trebui editată puțin pentru a face acest lucru. Acestea fiind spuse, s-ar putea să doriți să verificați: https://www.isitwp.com/install-google-analytics-wordpress-site/

  2. Learn how to track WordPress Page Views by User ID and Time June 8, 2015 at 7:15 am

    […] Fragment oferit de WP Snip […]

  3. Cu această funcție, cum arăți administratorului ultima postare vizitată de fiecare utilizator?

    Mulțumesc

Adaugă un comentariu

Suntem bucuroși că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de confidențialitate, iar toate linkurile sunt nofollow. NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.

Lista de verificare pentru lansarea WordPress

Lista de verificare finală pentru lansarea WordPress

Am compilat toate elementele esențiale de verificare pentru lansarea următorului dvs. site WordPress într-o singură carte electronică la îndemână.
Da, trimite-mi eBook-ul gratuit!