WP get_the_excerpt();阅读更多点错误的链接

时间:2014-10-15 21:28:57

标签: php wordpress

get_the_excerpt()中出现的“阅读更多”链接;链接到其他模板的摘录的正确帖子,但在下面的代码中(在不同的模板上),“阅读更多”链接指向用户当前所在的页面而不是帖子的永久链接。我见过其他人在其他论坛上发布了同样的问题,但在解决之前他们都被关闭了。

非常感谢任何帮助。

foreach($pr_content as $ID) {
                $post_temp = $post;
                setup_postdata(get_post($ID));
                $excerpt = get_the_excerpt();
                $post = $post_temp;
                echo '<article>';
                echo '<h4><a href="'.get_the_permalink($ID).'">'.get_the_title($ID).'</a></h4>';
                echo $excerpt;
                echo '</article>';
            }

3 个答案:

答案 0 :(得分:0)

get_the_permalink($ID)更改为get_permalink($ID)

答案 1 :(得分:0)

你没有把$ ID,因为$ ID不是帖子ID

所以你必须放<?php get_the_ID(); ?>

所以你的代码就像那样

foreach($pr_content as $ID) {
                $post_temp = $post;
                setup_postdata(get_post($ID));
                $excerpt = get_the_excerpt();
                $post = $post_temp;
                echo '<article>';
                echo '<h4><a href="'.get_the_permalink(get_the_ID()).'">'.get_the_title(get_the_ID()).'</a></h4>';
                echo $excerpt;
                echo '</article>';
            }

答案 2 :(得分:0)

我最终改变了拉动阵列的方式。感谢您的反馈意见。这种方法解决了这个问题。

if($pr_content) {
    $the_query = new WP_Query(array(
        'post_type'         => 'post',
        'posts_per_page'    => -1,
        'post__in'          => $pr_content,
        'post_status'       => 'any',
    ));

    while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
        <article>
            <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
            <?php the_excerpt(); ?>
        </article>
    <?php endwhile; wp_reset_postdata(); ?>
<?php } ?>