the_date() nu funcționează
Folosesc WordPress 3.2 și am făcut o interogare de postări astfel:
<?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>
Apoi încerc să afișez data acestei postări pe care am interogat-o astfel:
<?php echo the_date(); ?>
Îmi afișează titlul postării, extrasul și permalinkul dar nu și data. Care credeți că este problema. Sunt sigur că e ceva destul de stânjenitor.
Iată codul din fișierul meu template pentru pagina video:
<?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>
<h2>Video Recent</h2>
<h3 class="date"><?php echo the_date(); ?></h3>
<p><strong><?php echo the_title(); ?></strong><?php echo the_excerpt(); ?></p>
<p><a href="<?php echo the_permalink(); ?>" class="more2">Vizionează Acum</a></p>
Aici încerc să pun interogarea într-o buclă:
<?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2>Video Recent</h2>
<h3 class="date"><?php echo the_date(); ?></h3>
<p><strong><?php echo the_title(); ?></strong><?php echo the_excerpt(); ?></p>
<p><a href="<?php echo the_permalink(); ?>" class="more2">Vizionează Acum</a></p>
<?php endwhile; else: ?>
<p><?php _e('Ne pare rău, nicio postare nu corespunde criteriilor.'); ?></p>
<?php endif; ?>
the_date() nu a funcționat dar the_title() și alte funcții au funcționat. Apropo, acest lucru mi-a schimbat interogarea în the_post() care nu este ceea ce doresc. Vreau să interoghez cel mai recent video așa cum am făcut mai sus în buclă.
Apropo, am folosit funcția the_date mai devreme în pagină și a funcționat. Ar putea fi aceasta problema? Iată codul de dinainte de cel cu care am avut probleme.
<div id="col75" class="firstcol">
<iframe id="video" src="http://www.youtube.com/embed/videoseries?list=<?php print get_post_meta($post->ID,"playlist_id", true); ?>" width='560' height='350' frameborder="0"></iframe>
<div id="col25">
<h2><?php echo get_post_meta($post->ID,"speaker", true); ?></h2>
<h3 class="date"><?php echo the_date(); ?></h3>

Vezi această notă specială despre utilizarea `the_date`
NOTĂ SPECIALĂ: Când există mai multe articole pe o pagină publicate în ACEEAȘI ZI, the_date() afișează data doar pentru primul articol (adică prima instanță a the_date()). Pentru a repeta data pentru articolele publicate în aceeași zi, ar trebui să utilizați Template Tag the_time() sau get_the_date() (începând cu versiunea 3.0) cu un șir de format specific datei. Utilizați pentru a adăuga data setată în interfața de administrare.
- Utilizezi
query_posts
care afectează variabilele globale Afișezi o funcție care deja printează în browser
- De fapt, faci asta pentru toate tag-urile de template.
- Schimbă
echo the_date();
în:echo get_the_date('F j, Y');
- Elimină echo-ul din tag-urile de template care deja afișează în browser sau utilizează funcțiile alternative care returnează valoarea.
Utilizează o nouă instanță
WP_Query
sauget_posts
în loc dequery_posts
Citește Codex-ul. Acesta explică cum să utilizezi aceste funcții și este foarte util :)

get_the_date() mi-a rezolvat problema, dar acum get_the_date() din sidebar.php nu mai funcționează.

the_date()
afișează data doar dacă aceeași dată nu a fost afișată anterior.
Nu, acest comportament nu este consistent cu alte funcții similare. Dar așa funcționa în strămoșul WordPress, b2/cafelog, iar compatibilitatea retroactivă întotdeauna are prioritate față de logică ... :)
Pentru a afișa data întotdeauna, folosește get_the_date()
<?php echo get_the_date(); ?>
sau
<?php echo mysql2date( get_option( 'date_format' ), $post->post_date); ?>

NUUUUUUUUUUUUUUUUUUUU. Acum funcția get_the_date din bara laterală nu mai funcționează. Ce s-a întâmplat acolo?

Vezi răspunsul lui Cris_O și nu folosi query_posts()
. :)
