it-swarm.com.de

the_date () funktioniert nicht

Ich benutze WordPress 3.2 und habe einen Abfrage-Post wie diesen erstellt:

<?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>

Dann versuche ich, das Datum dieses Beitrags, den ich so abgefragt habe, wiederzugeben.

<?php echo the_date(); ?>

Es gibt mir den Titel des Beitrags und den Auszug und den Permalink, aber kein Datum. Was denkst du ist das Problem? Ich bin sicher, es ist etwas ziemlich Peinliches.

Hier ist der Code in meiner Vorlagendatei für die Videoseite:

    <?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>
    <h2>Recent Video</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">Watch Now</a></p>

Hier versuche ich die Abfrage in eine Schleife zu setzen:

<?php query_posts("posts_per_page=1post=type&page=post_parent=10");?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2>Recent Video</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">Watch Now</a></p>
<?php endwhile; else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>

the_date () hat nicht funktioniert, aber the_title () und andere Funktionen haben funktioniert. Übrigens hat dies meine Anfrage in the_post () geändert, was nicht das ist, was ich will. Ich möchte das neueste Video wie über der Schleife abfragen.

Übrigens habe ich die Funktion_date früher auf der Seite verwendet und es hat funktioniert. Könnte das das Problem sein? Hier ist der Code, mit dem ich ein Problem hatte.

<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>
19
zachdyer

Siehe diesen besonderen Hinweis zur Verwendung des `the_date '

BESONDERER HINWEIS: Wenn auf einer Seite unter dem GLEICHEN TAG mehrere Posts veröffentlicht sind, zeigt the_date () nur das Datum für den ersten Post an (d. H. Die erste Instanz von the_date ()). Um das Datum für Beiträge zu wiederholen, die am selben Tag veröffentlicht wurden, sollten Sie das Template-Tag the_time () oder get_the_date () (seit 3.0) mit einer datumsspezifischen Formatzeichenfolge verwenden. Verwenden Sie diese Option, um das in der Administrationsoberfläche festgelegte Datum hinzuzufügen.

  1. Sie verwenden query_posts, der die Globalen vermasselt
  2. Sie geben eine Funktion wieder, die bereits im Browser gedruckt wird

    • Das machst du eigentlich für all deine Template-Tags.
    • Ändern Sie echo the_date(); in: echo get_the_date('F j, Y');
    • Entfernen Sie das Echo aus Ihren Vorlagen-Tags, die bereits im Browser gedruckt wurden, oder verwenden Sie die alternativen Funktionen, die den Wert zurückgeben.
  3. Verwenden Sie einen neuen WP_Query oder get_posts anstelle von query_posts

  4. Lesen Sie den Kodex. Es erklärt dir, wie man all diese Funktionen benutzt und ist sehr hilfreich :)

49
Chris_O

the_date() druckt das Datum nur aus, wenn das gleiche Datum noch nicht gedruckt war.
Nein, das stimmt nicht mit anderen ähnlichen Funktionen überein. Aber das ist wie es in WordPress funktioniert hat b2/cafelog und Abwärtskompatibilität übertrumpft immer die Logik ... :)

Verwenden Sie zum Ausdrucken des Datums immer get_the_date()

<?php echo get_the_date(); ?>

oder

<?php echo mysql2date( get_option( 'date_format' ), $post->post_date); ?>
14
fuxia

Ich denke, das soll innerhalb der while( have_posts() ) Bedingung ausgeführt werden:

while ( have_posts() ) : the_post();
    echo '<li>';
    the_date();
    echo '</li>';
endwhile;
0
Kristian

Sie müssen die Schleife initialisieren, damit bestimmte Funktionen funktionieren. Alle diese Funktionen führen auf ihrer Codex-Seite an, dass sie außerhalb der Schleife nicht ordnungsgemäß funktionieren.

0
mor7ifer