函数导致EDIT_POST_LINK链接到错误的帖子

时间:2016-12-13 作者:Arete

在我的功能中。php我有一个函数,允许我放置“similar posts by categories“:

functions.php:

function alep_related_posts_by_category() {  
global $post;  
// We should get the first category of the post  
$categories = get_the_category( $post->ID );  
$first_cat = $categories[0]->cat_ID;  

$args = array(  
    // It should be in the first category of our post:  
    \'category__in\' => array( $first_cat ),  
    // Our post should NOT be in the list:  
    \'post__not_in\' => array( $post->ID ),  
    \'posts_per_page\' => 3  
);  

$posts = get_posts( $args );  
if( $posts ) {  
    $output = \'<div class="sidebar-entries">\';  

    foreach( $posts as $post ) {  
        setup_postdata( $post );  
        $post_title = get_the_title();  
        $permalink = get_permalink();  
        $output .= \'<p class="title clickablediv"><a href="\' . $permalink . \'" title="\' . esc_attr( $post_title ) . \'">\' . $post_title . \'</a></p>\';  
    }  
    $output .= \'</div>\';  
} else {  

    $output .= \'<p>Sorry, no other posts matched this category.</p>\';  
}  
echo $output;  
}  
我刚刚发现如果我将此函数与<?php edit_post_link(\'Edit article\', \'<p>\', \'</p>\'); ?> 这将导致“编辑帖子链接”链接到错误的帖子。我不知道为什么这些功能是相关的。我知道如果我删除上面的函数edit_post_link 很好用。

这是怎么回事?如何解决此问题?

1 个回复
SO网友:Sumesh S

使用该功能wp_reset_postdata() 在循环帖子之后。我想这会解决你的问题。。。

Note : 如果您使用setup_postdata() 你确实需要wp_reset_postdata() 之后

相关推荐

如何在Functions.php中链接style.css

我是WordPress的新手;我刚开始学习WordPress。我想把风格联系起来。函数中的css。php,但我无法解决这里可能存在的问题。谁能给我指出正确的方向吗?指数php<?php get_header(); ?> <?php if ( have_posts() ) { while ( have_posts() ) { the_post();