Intereting Posts
Как переписать URL-адрес и получить значения? Создание плагина с легкими мультимедийными тегами с пользовательской таксономией Пользовательский таксономический архив – Посты не найдены Деактивировать плагин при отключении другого плагина Добавить / echo div с помощью кода Analytics для функции в functions.php AJAX не работает с базой данных WordPress правильно Переупорядочить «порядок меню» вложений в другой предопределенный порядок Необходимо включить и перенаправить шаблон из плагина Шаблон Buddypress Registartion Сложность с функцией PHP, которая отображает формат сообщения в WordPress Как я могу указать настраиваемое поле и пользовательские таксономии для каждого результата в цикле? Получить изображение автора для сообщений в цикле на странице сообщений специального типа Загрузка короткого кода с помощью ajax Как увеличить ширину слайдов галереи до ширины изображения? Постоянная ссылка: Страница не найдена

исключая текущий пост из get_posts

У меня есть этот код кода, отображаемый в шаблоне single.php

<ul class="cat-wrap"> <?php global $post; $categories = get_the_category(); foreach ($categories as $category) : ?> <h5>same from <?php echo $category->name; ?></h5> <?php $args = array( 'numberposts' => 5, 'category' => $category->term_id, 'post__not_in' => array( $post->ID ) ); $posts = get_posts($args); foreach($posts as $post) : ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <?php endforeach; ?> <li><a href="<?php echo get_category_link($category->term_id);?>" title="View all posts filed under <?php echo $category->name; ?>">جميع مقالات قسم <?php echo $category->name; ?></a></li> <?php endforeach; ?> </ul> 

цикл работает отлично, за исключением 'post__not_in' => array( $post->ID ) ведет себя странным образом. чтобы объяснить больше, если у меня есть должность, которая разделяет 4 разных категории. сгенерированный код следующий

 <ul> <h5>same from Cat1</h5> <li>another article 1</li> <li>another article 2</li> <li>another article 3</li> <li>another article 4</li> <h5>same from Cat2</h5> <li>Current Article</li> <li>another article 1</li> <li>another article 2</li> <li>another article 3</li> <h5>same from Cat3</h5> <li>Current Article</li> <li>another article 1</li> <li>another article 2</li> <li>another article 3</li> <h5>same from Cat4</h5> <li>Current Article</li> <li>another article 1</li> <li>another article 2</li> <li>another article 3</li> 

как вы можете заметить только <h5>same from Cat1</h5> что исключает текущую запись, остальные включают в себя и исключая какую-либо другую случайную запись.

спасибо заранее, и я надеюсь, что мне удалось объяснить мою проблему.

Solutions Collecting From Web of "исключая текущий пост из get_posts"

Вы переписываете значение $post при выводе первого набора сообщений, поэтому он больше не тот же пост-объект, что и ваш единственный пост.

Вы можете либо wp_reset_postdata() после каждого цикла (который вы должны делать после последнего в любом случае), либо назначить $post->ID для какого-либо другого var перед циклом, а вместо этого ссылаться, чтобы он не перезаписывался.