Wordpress永久链接到特定的博客帖子,而不是当前的URL

时间:2014-05-26 12:12:15

标签: php wordpress

我的主页上有一个循环显示最近的3篇博文,这是从页脚中包含的。如果我去网站的其他地方,例如不同的博客文章,'the_permalink'不是抓住特色3博客帖子链接,而是抓住你当前所在页面的链接。

这3篇博客文章会随着新帖的添加而发生变化,因此我无法定义该链接只是特定的博客文章。

以下是显示第一篇博文的代码。在footer.php中找到,因此显示在每个页面上。

            <div id="news-container-1">
                <?php
                // Create a variable to hold our custom Loop results
                $excludes  = array('4135');
                $frontpageposts = get_posts( array( 
                     'numberposts' => 1, // only the 3 latest posts
                     'post__not_in' => $excludes
                ) );

                // Create output only if we have results
                // Customize to suit your HTML markup
                if ( $frontpageposts ) { 

                     foreach ( $frontpageposts as $fppost ) { 
                          // setup postdata, so we can use template tags
                          setup_postdata($fppost);
                          ?>

                          <div <?php post_class(); ?>>
                               <h4><a href="<?php the_permalink(1); ?>"><?php //the_title(); ?>Latest News #1</a></h4>
                               <div class="post-entry">
                                    <?php                                                
                                            $content = $post->post_content;
                                            $searchimages = '~<img [^>]* />~';

                                            /*Run preg_match_all to grab all the images and save the results in $pics*/

                                            preg_match_all( $searchimages, $content, $pics );

                                            // Check to see if we have at least 1 image
                                            $iNumberOfPics = count($pics[0]);

                                            if ( $iNumberOfPics > 0 ) { ?>
                                                <!-- GRAB THE IMAGE AND USE WHATEVER HTML YOU LIKE -->
                                                  <img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>" /></a>
                                            <?php }
                                    ?>
                                    <?php //the_excerpt(); ?>
                               </div>
                          </div>

                <?php }
                } 
                ?>
            </div>

1 个答案:

答案 0 :(得分:1)

the_permalink()没有任何参数,因此请删除“1”。

您需要更改设置帖子的方式。 setup_postdata()目前使用不当。

if ( $frontpageposts ) { 
    global $post;

    foreach ( $frontpageposts as $post ) { 
        // setup postdata, so we can use template tags
        setup_postdata( $post );

然后在foreach循环结束时,您需要重置帖子对象。

改变这个:

<?php }
} 

对此:

<?php }
    wp_reset_postdata();
}