Помогите с функцией вывода похожих записей в Ворж
Страницы: 1
Помогите с функцией вывода похожих записей в Ворж
Подскажите, пожалуйста, почему функция вывода похожих записей по тегам показывает также страницы, у которых тегов вообще нет (пробовал задавать и левые):

Код
<?php $categories = get_the_category($post->ID);
if ($categories) {
 $category_ids = array();
 foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
 $args=array(
 'tag__in' => $tag_ids, // Сортировка производится по тегам
 'orderby'=>rand, // Условие сортировки рандом
 'post__not_in' => array($post->ID),
 'showposts'=>4, //Количество выводимых записей
 'caller_get_posts'=>1); // Запрещаем повторение ссылок
 $my_query = new wp_query($args);
 if( $my_query->have_posts() ) {
echo '<ul>';
        while ($my_query->have_posts()) {
            $my_query->the_post();
        ?>


На других своих сайтах подобной проблемы не наблюдал, хотя, правда, там у меня все статьи имеют теги. Но при этом не лезут же в похожие записи, в которых не должны быть...

Когда меняю строку  'tag__in' => $tag_ids, на  'category__in' => $category_ids,  чтобы выводилось по категориям (мне это хуже, но допустимо) то в похожих записях вылазит текущая страница тоже, хотя строчка 'caller_get_posts'=>1); должна предотвращать это(( На других сайтах тоже подобной проблемы вроде не наблюдал с этой же функцией...
Изменено: Иван - 3 Ноября 2016 13:22
Код
<div class="similar_records">
<h3>Похожие записи:</h3>
<?php $tags = wp_get_post_tags($post->ID);
if ($tags) {
 $tag_ids = array();
 foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
 $args=array(
 'tag__in' => $tag_ids, // Сортировка происходит по тегам (меткам)
 'orderby'=>rand, // Добавляем условие сортировки рандом (случайный подбор)
 'caller_get_posts'=>1, // Запрещаем повторение ссылок
 'post__not_in' => array($post->ID),
 'showposts'=>5 // Цифра означает количество выводимых записей
 );
 $my_query = new wp_query($args);
 if( $my_query->have_posts() ) {
 echo '<ul>';
        while ($my_query->have_posts()) {
            $my_query->the_post();
        ?>
            <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
        <?php
        }
        echo '</ul>';
    }
 wp_reset_query();
 }
 ?></div>
 

В таком виде вообще не работает((
Точнее не работает в виджете. А вот под статьей все прекрасно!
Изменено: Иван - 3 Ноября 2016 15:11
В виджет плагином просто выведите, та и все проблемы) 
Плагин: Recent Posts Widget Extended
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
06:35 В Яндексе позиции держатся, а трафик проседает - стало заметно сильнее 
00:06 Хватит ныть про смерть сайтов и нейроответы - почему мы всё еще в деле 
23:47 ИКС Яндекс АПдейт 1 апреля 2026. Обновлён алгоритм расчёта 
23:28 Бегун обманщик 
23:14 Сеть контекстной рекламы 
23:05 Лучший аналог бегуна есть ли ? 
20:37 WB и Ozon - новые "русские поисковики"? Яндекс теряет коммерческую выдачу 
11:27 Прокси IPv6 Россия 
10:07 продам один НН Аккаунт . МОЙ ЛИЧНЫЙ аккаунт на HeadHunter 
09:37 Onechange.me — надежный обменник криптовалют и фиатных средств 
08:47 Swapwatch.org — Мониторинг криптовалютных обменников 
08:10 HH.ru Работадателя вериф 
01:43 SOCKS5 приватные прокси на 30 дней для PayPal 
01:43 Google Voice аккаунты для бесплатных SMS и звонков 
11:22 А вы бегаете? 
11:21 Список обновленных тем пуст... 
06:59 Добро пожаловать в цифровой мир... 
02:06 Во Франции начали штрафовать за IPTV - до 300-400 евро уже прилетает обычным пользователям 
20:56 Точные прогнозы на футбол 
20:34 "Вымпелком" предложил белые списки для части абонентов - выборочный интернет вместо полного доступа 
19:55 Чак Норрис ушел - 19 марта 2026, 86 лет, семья подтвердила