Помогите с функцией вывода похожих записей в Ворж
Страницы: 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)
Новые темыОбъявленияСвободное общение
16:55 Штрафы РСЯ за скорость - выкинет ли Яндекс сайт на дешевом хостинге? 
16:32 Апдейт 14 апреля: ощущение, что режет не только выдача 
00:47 В Яндексе позиции держатся, а трафик проседает - стало заметно сильнее 
00:09 Бесплатное расширение для Chrome — проверка ссылок прямо на странице 
23:52 PHP 8 ломает старые сайты. Кто уже обновился - что отвалилось? 
23:23 Легкая тема для Вордпресса в 2026 - чтобы и красиво, и быстро? 
15:51 Яндекс Нейро и выдача в 2026 - остались ли лазейки для маленьких сайтов? 
16:57 Продам домен 28z.ru 
15:56 Продам Домены .COM с историей трафика. 
13:24 AllCharge.online. Современный, быстрый и надёжный обменник 
13:12 Linken Sphere – браузер-антидетект нового поколения 
11:10 Мониторинг обменников Сrypto-scout.io 
10:11 BestChange – обменивать электронную валюту можно быстро и выгодно 
08:55 Monitex: Мониторинг с кэшбэком 80% в USDT 
16:34 Франция уходит с Windows на Linux - это реально тренд или просто политика? 
16:28 В жительница Китая каждый день общается с ИИ-клоном сына и не знает, что он умер 
15:32 90% людей живут не своей жизнью - вы тоже? 
13:29 Во Франции начали штрафовать за IPTV - до 300-400 евро уже прилетает обычным пользователям 
05:07 Точные прогнозы на футбол 
00:58 С юмором по жизни! 
00:21 Добро пожаловать в цифровой мир...