Você está procurando uma maneira de rastrear visualizações de posts e páginas por ID de usuário, data e hora? Embora provavelmente exista um plugin para isso, criamos um trecho de código rápido que você pode usar para rastrear visualizações de posts e páginas por ID de usuário, data e hora no WordPress.
Primeiro, adicione wps_trackViewDates(); dentro do loop do seu arquivo de template. Uma vez adicionado, o snippet rastreará o ID do usuário que visualizou um post individual, juntamente com a data e hora em que foi visualizado.
Você também pode adicionar uma opção de expiração que comparará o tempo de expiração com o tempo atual e retornará verdadeiro enquanto o tempo de expiração for menor. Isso é bastante útil se você quisesse exibir uma mensagem personalizada com base em quando cada usuário visualizou a postagem. Você pode ver ‘strtotime’ neste caso com mais de 20 minutos para expirar. Veja ‘strtotime’ para mais opções.
Você pode adicionar um pequeno snippet no final chamado wps_getViewCounts(); que simplesmente retornará o número de visualizações únicas de posts.
Instruções:
Tudo o que você precisa fazer é adicionar este código ao arquivo single.php do seu 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); }
}
Para verificar se a expiração é verdadeira, você pode adicionar o seguinte código no seu arquivo single.php.
/* USAGE */
if(wps_trackViewDates() == true){
echo 'message when true';
}else{
echo 'message when false';
}
Observação: Se esta é a primeira vez que você adiciona trechos de código no WordPress, consulte nosso guia sobre como copiar / colar trechos de código corretamente no WordPress, para não quebrar acidentalmente seu site.
Se você gostou deste trecho de código, considere conferir nossos outros artigos no site, como: 25 melhores ferramentas para freelancers escalarem um negócio e como salvar dados parciais de formulário no WordPress.
Com essa função, como você mostra ao administrador o último post visitado por cada usuário?
Obrigado
A função provavelmente precisaria ser um pouco editada para fazer isso. Dito isso, você pode querer conferir: https://www.isitwp.com/install-google-analytics-wordpress-site/
[…] Snippet cortesia de WP Snip […]
Com essa função, como você mostra ao administrador o último post visitado por cada usuário?
Obrigado