• User

    Per pubblicare il contenuto completo solo dell'ultimo post

    Salve. Vorrei che solo l'ultimo post venga pubblicato per intero mentre tutti gli altri solo un estratto.
    Ho pensato di utilizzare la funzione di WP ** get_lastpostmodified()** e effettuare all'interno del loop una comparazione tra data del post in questione e risultato di get_lastopostmodified().

    Mi da sempre sull'if come risultato "falso" mentre dovrebbe dare una volta vero (nessun messaggio di errore...).

    Ho provato, per debug, a creare un output per ogni variabile. Ho creato anche una $test per vedere il risultato di una sottrazione tra $data e $ultimo ma sembra non calcolare.

    Il codice è questo:

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php $ultimo= (date("Ymd", strtotime(get_lastpostmodified())));?>
    [...]
    <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><h1><?php the_title() ?></h1></a>
    [...]
    <?php	
    $data=(the_date(Ymd));
    $test=strcmp($ultimo, $data);
    print "$data rispetto $ultimo poi $test";
    if ($data == $ultimo) { print(Uguali); the_content(); } else { the_excerpt(); }?>
    <?php endwhile; endif;?>
    [...]
    

    L'output lo trovate all'indirizzo iparalipomenidi.vagamente.net qua.

    Dove sta l'inghippo?


  • User

    Trovato!!!
    Il problema stava nel fatto che utilizzavo la funzione di WP the_date() (pensata per visualizzare una data) invece della funzione get_the_date() che invece recupera semplicemente il valore.

    Ora funziona.

    Il codice corretto se qualcuno vuole riutilizzarlo quindi è questo:

    <?php $ultimo= (int) (date("Ymd", strtotime(get_lastpostmodified())));?>
    <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><h1><?php the_title() ?></h1></a>
    <?php $data= (int) date(get_the_time(Ymd));
    if ($data == $ultimo) the_content();
    else{
    the_excerpt();?>
    <p><a href="<?php the_permalink() ?>" class="continue">Continua a leggere questa roba qua &raquo;</a></p>
    <?php } ?>
    

    Saluti


  • User Attivo

    Grazie, sicuramente sarà utile a molti!