Помогите с функцией вывода похожих записей в Ворж
Страницы: 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)
Новые темыОбъявленияСвободное общение
23:46 adsense в 2026: кто реально выводит копейку через киргизию? 
22:09 Как поймать партнера на «сливе» бренда? 
22:05 Очередной взлом через плагин. Хакеры получают админку без пароля 
20:40 Мошенники-копирайтеры 
17:52 Подскажите ТОП 5-10 ИМ с современным дизайном? 
17:42 Биржи ссылок в 2026 - реально ли новичку с одним сайтом поднять копейку? 
17:38 Яндекс Нейро и выдача в 2026 - остались ли лазейки для маленьких сайтов? 
23:48 GoodsMoney.io 
23:46 Volna.money 
22:37 BestX24 - быстрый и безопасный обменник криптовалют и электронных денежных средств 
18:14 Bardo — Бюро развития и координации цифровых операций. 
17:32 Вериф аккаунты АВИТО + платежи 
13:09 Продажа аккаунтов HH.RU 
12:03 garantcoin.io - быстрый и надёжный сервис обмена криптовалюты GarantCoin 
22:13 8 марта: желаю аптайма 99.9% и e-e-a-t без локов 
19:04 Какой фильм вы любите посмотреть перед сном? 
19:03 О природе путешествий. 
19:02 Огородники 
01:47 Точные прогнозы на футбол 
17:45 молодильные яблоки и живая вода 
15:04 Сайты Рунета