ohne aktuellen Post von get_posts

Ich habe diesen Code in single.php Vorlage angezeigt

    same from name; ?>
    5, 'category' => $category->term_id, 'post__not_in' => array( $post->ID ) ); $posts = get_posts($args); foreach($posts as $post) : ?>
  • <a href="https://wordpress.stackexchange.com/questions/179538/excluding-current-post-from-get-posts/">
  • <a href="https://wordpress.stackexchange.com/questions/179538/excluding-current-post-from-get-posts/term_id);?>" title="View all posts filed under name; ?>">جميع مقالات قسم name; ?>

Die Schleife funktioniert gut außer 'post__not_in' => array( $post->ID ) verhält sich auf eine seltsame Art und Weise. um mehr zu erklären, wenn ich einen Beitrag habe, der 4 verschiedene Kategorien teilt. Der generierte Code ist der folgende

 
    same from Cat1
  • another article 1
  • another article 2
  • another article 3
  • another article 4
  • same from Cat2
  • Current Article
  • another article 1
  • another article 2
  • another article 3
  • same from Cat3
  • Current Article
  • another article 1
  • another article 2
  • another article 3
  • same from Cat4
  • Current Article
  • another article 1
  • another article 2
  • another article 3

wie Sie können nur

same from Cat1

, dass der aktuelle Post, der Rest einschließlich und ausgenommen einige andere zufällige post.

Vielen Dank im Voraus und ich hoffe, ich habe mein Problem erklärt.

Solutions Collecting From Web of "ohne aktuellen Post von get_posts"

Sie überschreiben den Wert von $post wenn Sie den ersten Satz von Posts ausgeben, also ist es nicht mehr dasselbe Post-Objekt wie Ihr einzelner Post.

Sie können entweder wp_reset_postdata() nach jeder Schleife (was Sie sowieso nach der letzten machen sollten), oder $post->ID einer anderen Variablen vor der Schleife zuweisen und stattdessen darauf verweisen, damit sie nicht überschrieben wird.