it-swarm.com.de

previous_post_link () und next_post_link () mit einem benutzerdefinierten Beitragstyp?

Ich bin auf single-work.php für einen benutzerdefinierten Beitragstyp namens work in der Schleife.

Es wird versucht, zwei Links zum vorherigen und nächsten Beitrag zu erstellen.

Verwenden Sie diesen Code:

<?php previous_post_link(); ?>

und

<?php next_post_link(); ?>

Es zeigt sich aber nichts. Vermisse ich etwas?

Hier ist mein Code, sehr einfach:

<?php get_header(); ?>
<div class="full" >

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

    <?php next_post_link('%link', 'Next post »'); ?>
<?php next_post_link('%link', 'Next post »'); ?>

<?php endwhile; // end of the loop. ?>

</div><!--/full-->  
<?php get_footer(); ?>
3
wesbos

Was ich in Ihrem Code sehe, ist, dass Ihre nächsten und vorherigen Postleitzahlen in der while-Schleife angezeigt werden, die sich nicht in der Schleife befinden sollte und wie folgt aussehen sollte:

<?php get_header(); ?>
<div class="full" >
<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
<?php endwhile; // end of the loop. ?>
<?php next_post_link('%link', 'Next post »'); ?>
<?php next_post_link('%link', 'Next post »'); ?>
</div><!--/full-->  
<?php get_footer(); ?>

Oder Sie finden es im Detail hier .

Im obigen Beitrag habe ich eine numerische Paginierung gefunden, aber es wurde immer noch erklärt, wie genau die Paginierung funktioniert, was sehr detailliert ist.

3
wpmemorize

Die Funktionen sind richtig; Stellen Sie die Parameter ein

<?php next_post_link('%link', 'Next post »'); ?>

<?php next_post_link('%link', 'Next post »'); ?>

Ohne Ihren Code zu sehen, ist es schwer zu sagen, warum. Gibt es PHP Fehler oder Warnungen?

Update

Ein kleines Beispiel

<?php query_posts( array( 'post_type' => 'page', 'post_status' => 'publish' ) ) ?>
<?php if ( have_posts() ) : ?>

    <?php while ( have_posts() ) : the_post() ?>
        <!-- do stuff -->

    <div id="nav-single">
        <div class="left"><?php previous_post_link(); ?></div>
        <div class="right"><?php next_post_link(); ?></div>
    </div>

    <?php endwhile; // end of the loop. ?>
    <?php wp_reset_query(); ?>

<?php else : ?>

    <!-- do other stuff here -->

<?php endif ?>
1
bueltge

Lesen Sie die Dokumentation .

Diese Funktion wird nicht funktionieren (im Hintergrund fehlschlagen), wenn mysql.trace_mode in Ihrer php.ini aktiviert ist. Wenn Sie diese Datei nicht bearbeiten können, fügen Sie sie hinzu

ini_set( 'mysql.trace_mode', 0 ); to your theme's functions.php.

Das könnte dein Problem lösen, das hat es für mich getan.

1