Como posso colocar "postado x minutos atrás em minhas postagens?

4

wordpress por padrão escreve a data em posts, mas como posso transformá-lo para: "x" tempo atrás ?? como 3 dias atrás, ou 5 minutos atrás ??

    
por 11.12.2011 / 23:59

2 respostas

2
function k99_relative_time() { 
    $post_date = get_the_time('U');
    $delta = time() - $post_date;
    if ( $delta < 60 ) {
        echo 'Less than a minute ago';
    }
    elseif ($delta > 60 && $delta < 120){
        echo 'About a minute ago';
    }
    elseif ($delta > 120 && $delta < (60*60)){
        echo strval(round(($delta/60),0)), ' minutes ago';
    }
    elseif ($delta > (60*60) && $delta < (120*60)){
        echo 'About an hour ago';
    }
    elseif ($delta > (120*60) && $delta < (24*60*60)){
        echo strval(round(($delta/3600),0)), ' hours ago';
    }
    else {
        echo the_time('j\<\s\u\p\>S\<\/\s\u\p\> M y g:i a');
    }
}

coloque k99_relative_time() ; no arquivo de tema onde você quer que isso apareça.

    
por krembo99 12.12.2011 / 00:01
5

O Wordpress possui uma função interna chamada human_time_diff () que permite que você faça isso.

Basta colocar este código nas suas funções.

function time_ago( $type = 'post' ) {
    $d = 'comment' == $type ? 'get_comment_time' : 'get_post_time';

    return human_time_diff($d('U'), current_time('timestamp')) . " " . __('ago');

}

Para usá-lo em qualquer lugar do seu tema (por exemplo, em single.php), coloque este código onde você quer que o recurso "tempo atrás" seja exibido:

<?php echo time_ago(); ?>

Deixe-me saber se funcionou para você.

    
por Sosthenes Kwame Boame 12.12.2011 / 08:22

Tags