Come ottenere la data per ogni post?
2 risposta
- voti
-
- 2013-03-11
Mi sonoimbattutonello stessoproblema diverse volte,in passato le seguentimodifiche hannofunzionato:
while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date( 'Y-m-d' ); ?></li> <li class="icon-time"><?php the_time( 'H:i:s' ); ?></li>
Invece di
the_date()
,utilizzaget_the_date()
.
L'unica cosa datenerepresente è chei valori restituiti daget_the_date()
devonoessere visualizzati con l'eco.Guardando lapagina del Codex c'è una nota speciale su
the_date()
.Quando ci sonopiùpost su unapaginapubblicatanello STESSO GIORNO,the_date ()mostra solo la dataperilprimopost (cioè laprimaistanza dithe_date ()). Per ripetere la dataperi postpubblicatinello stessogiorno,dovresti utilizzareiltagmodellothe_time () oget_the_date () (dal 3.0) con una stringa diformato specificaper la data.
Inoltre,se vuoi controllareilformatoin cui
get_the_date()
viene restituitoin Admin,puoi usareget_option('date_format')
. In questomodo,se cambiilformato della datanell'amministratore,questemodifiche verranno apportate anche altuo codice.while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date( get_option('date_format') ); ?></li> <li class="icon-time"><?php the_time( 'H:i:s' ); ?></li>
I ran into the same problem several times, following changes worked for me in the past:
while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date( 'Y-m-d' ); ?></li> <li class="icon-time"><?php the_time( 'H:i:s' ); ?></li>
Instead of
the_date()
, useget_the_date()
.
The only thing to be aware of, is that values returned byget_the_date()
have to be echoed.Looking at the Codex page there is a special note about
the_date()
.When there are multiple posts on a page published under the SAME DAY, the_date() only displays the date for the first post (that is, the first instance of the_date()). To repeat the date for posts published under the same day, you should use the Template Tag the_time() or get_the_date() (since 3.0) with a date-specific format string.
Also, If you want to control the format in wich
get_the_date()
is returned in Admin, you can useget_option('date_format')
. This way if you change the date format in the Admin, these changes will me made in your code too.while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date( get_option('date_format') ); ?></li> <li class="icon-time"><?php the_time( 'H:i:s' ); ?></li>
-
- 2013-03-11
Quando su unapagina sonopresentipiùpostpubblicati nello STESSO GIORNO,the_date ()mostra solo la data delprimopost (ovvero laprimaistanza dithe_date ()) . Per ripetere la dataperi postpubblicatinello stessogiorno,ènecessario utilizzareiltagmodello the_time () o get_the_date () (dalla 3.0) con un stringa diformato specifica della data . Utilizzareper aggiungere la dataimpostatanell'interfaccia di amministrazione.
Per ulterioriinformazioni,visita questapagina .
Quindi,in base al riferimento al codice wordpress,il codice corretto saràil seguente:
while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date('Y-m-d');?></li> <li class="icon-time"><?php the_time('H:i:s');?></li>
When there are multiple posts on a page published under the SAME DAY, the_date() only displays the date for the first post (that is, the first instance of the_date()). To repeat the date for posts published under the same day, you should use the Template Tag the_time() or get_the_date() (since 3.0) with a date-specific format string. Use to add the date set in the admin interface.
For more information visit this page.
So according to the wordpress codex reference the correct code will be as following :
while (have_posts()) : the_post(); //some html <li class="icon-date"><?php echo get_the_date('Y-m-d');?></li> <li class="icon-time"><?php the_time('H:i:s');?></li>
Sto utilizzando quanto segueper ottenere la data di ognipost:
Tuttavia,ricevo solo la data delprimopost. Perché?