Benutzerdefinierter Beitragstyp Nächster / Vorheriger Link?

12

Ich habe einen benutzerdefinierten Beitragstyp namens Portfolio. Ich brauche einen vorherigen / nächsten Link OHNE Plugin. Hat jemand eine Lösung?

Beispielbeitrag: http://themeforward.com/demo2/archives/portfolio/boat

<?php get_header(); ?>

<!-- Begin wrap -->
<div class="clear">
<div id="full_container">
<div id="content2">
<div id="content">

<!-- Grab posts -->
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>

<!-- Post title -->
<h1>
    <?php the_title(); ?>
</h1>

<!-- The post -->
<?php the_content(); ?>

<!-- Tags -->
<h3 class="tags">
    <?php the_tags('Tags ',' / ','<br />'); ?>
</h3>

<!-- End wrap -->
</div>

<!-- Next/Previous Posts -->
<div class="mp_archive2">
<div id="more_posts">
    <div class="oe">
        <?php previous_post_link('%link', '« Previous post', TRUE); ?>
    </div>

    <div class="re">
        <?php next_post_link('%link', 'Next post »', TRUE); ?>
    </div>
</div>
</div>

<?php endwhile; else: ?>
<p>No matching entries found.</p>
<?php endif; ?>
</div>
</div>
</div>
</div>
<?php get_footer(); ?>
AndrettiMilas
quelle
3
Warum die Abneigung gegen Plugins?
Chrisguitarguy
Denn wenn es sich um ein Plugin handelt, ist es nicht in das Thema integriert.
AndrettiMilas
4
@Lucas Wynne Wenn Sie möchten, dass es integriert ist, kopieren Sie Plugin-Code in die Datei functions.php Ihres Themas.
Kaiser
2
@kaiser unter der Annahme, dass Sie die Lizenz- und IP-Bedingungen einhalten, was nicht so einfach ist, wenn Sie ein Thema zum Verkauf anbieten.
Phill Healey

Antworten:

14

Wenn Sie nächste / vorherige Links für einzelne Beiträge benötigen, gibt es die integrierte next_post_linkFunktion und den Abgleich previous_post_link, die wahrscheinlich beide innerhalb der Schleife verwendet werden sollten.

Verwenden Sie für Archive next_posts_linkund previous_posts_link.

All dies funktioniert gut mit benutzerdefinierten Beitragstypen.

chrisguitarguy
quelle
Sie arbeiten nicht in meinem Thema.
AndrettiMilas
3
Okay. Nun, ohne Ihren Code zu sehen, ist es schwer zu sagen, warum. Gibt es PHP-Fehler oder Warnungen? Haben Sie mehrere Beiträge für die Funktionen eingefügt, für die Links abgerufen werden sollen?
Chrisguitarguy
Ich habe meine Frage oben aktualisiert.
AndrettiMilas
Versuchen Sie es mit dem dritten TRUE-Argument und lassen Sie es uns wissen.
Chrisguitarguy
Drittes wahres Argument?
AndrettiMilas
13
<?php
$prev_post = get_previous_post();
if($prev_post) {
   $prev_title = strip_tags(str_replace('"', '', $prev_post->post_title));
   echo "\t" . '<a rel="prev" href="' . get_permalink($prev_post->ID) . '" title="' . $prev_title. '" class=" ">&laquo; Previous post<br /><strong>&quot;'. $prev_title . '&quot;</strong></a>' . "\n";
}

$next_post = get_next_post();
if($next_post) {
   $next_title = strip_tags(str_replace('"', '', $next_post->post_title));
   echo "\t" . '<a rel="next" href="' . get_permalink($next_post->ID) . '" title="' . $next_title. '" class=" ">Next post &raquo;<br /><strong>&quot;'. $next_title . '&quot;</strong></a>' . "\n";
}
?>
user25225
quelle
3
Bitte formatieren Sie Ihre Codes / Antworten und fügen Sie eine Erklärung hinzu.
Maruti Mohanty
1
Wie auch immer, ich kann das auf die Taxonomie beschränken, in der sich das CPT befindet?
Gil Hamer