Wordpress:上一个/下一个缩略图显示自定义帖子上的当前缩略图

时间:2014-11-09 19:22:14

标签: php jquery wordpress post

我创建了一个模板,显示包含上一个和下一个链接的缩略图。这适用于普通帖子。

问题

我在自定义帖子中使用了相同的代码。它不显示下一个和上一个缩略图,而是显示当前自定义帖子的缩略图。我附上了一个截图,让您了解我想要创建的内容。

enter image description here

问题

有人可以弄清楚为什么这段代码在自定义帖子中不起作用?为什么它会通过错误的缩略图。

非常感谢, 厄伦

使用代码

    <!-- Left Arrow -->
    <div class="post-pagination-left">
    <?php $prev_post = get_previous_post(); if (!empty( $prev_post )): ?>
    <a href="<?php echo get_permalink( $prev_post->ID ); ?>" class="link">

    <svg/></svg>  
    <span style="font-size:20px; font-weight:600;">&nbsp;Previous</span><br>
    <?php echo $prev_post->post_title; ?></a>

    <?php endif; ?>
    <span class="pagination-left-image"><?php $previousPost = get_previous_post(true); $previousthumbnail = get_the_post_thumbnail($previousPost->ID, array(500,500) ); echo $previousthumbnail; ?></span>
    </div>


    <!-- Right Arrow -->
    <div class="post-pagination-right">
    <?php $next_post = get_next_post(); if (!empty( $next_post )): ?>
    <a href="<?php echo get_permalink( $next_post->ID ); ?>" class="link">
        <span style="font-size:20px; font-weight:600;">Next&nbsp;</span>
     <svg/></svg><br> 
     <?php echo $next_post->post_title; ?>

    </a>

    <?php endif; ?>
    <span class="pagination-right-image"><?php $nextPost = get_next_post(true); $nextthumbnail = get_the_post_thumbnail($nextPost->ID, array(300,300) ); echo $nextthumbnail; ?></span>

    </div>

1 个答案:

答案 0 :(得分:0)

您以不同方式使用get_previous_post两次。在第二个版本中,您将$in_same_term参数设置为true。我的猜测是它找不到帖子所以返回一个空字符串。然后get_the_post_thumbnail()将获取当前帖子的缩略图。

请尝试以下方法:

<!-- Left Arrow -->
<div class="post-pagination-left">
    <?php // Get previous post.
    $prev_post = get_previous_post(); 

    if ( ! empty( $prev_post ) ) : ?>
        <a href="<?php echo get_permalink( $prev_post->ID ); ?>" class="link">
            <svg/></svg>  
            <span style="font-size:20px; font-weight:600;">&nbsp;Previous</span><br>
            <?php echo $prev_post->post_title; ?>
        </a>

        <span class="pagination-left-image">
            <?php echo get_the_post_thumbnail( $prev_post->ID, array( 500, 500 ) );?>
        </span>
    <?php endif; ?>
</div>

请务必在下一篇文章中重复这一点。

您可能希望将条件移到div之外。我没有在我的回答中做到这一点,以防它破坏你的布局。您可以确保通过get_permalink传递对象而不是帖子ID,清除内联CSS等其他改进。