Помогите исправить php код
Страницы: Пред. 1 2
Помогите исправить php код
Пробуйте
Код
<div class="related_posts">

<p>Похожие материалы</p>

<?php

$tags = wp_get_post_tags($post->ID);

$categories = get_the_category($post->ID);

if (!empty($tags)) {
    
    $tag_ids = array();
    
    foreach ($tags as $individual_tag)
    
        $tag_ids[] = $individual_tag->term_id;
    
    $args = array(
        
        'tag__in' => $tag_ids,
        'orderby' => rand,
        'post__not_in' => array(
        
            $post->ID
        ),
        'showposts' => 4
        
    );
    
    $my_query = new wp_query($args);    
    
    echo '<ul>';
    
    while ($my_query->have_posts()) {
        
        $my_query->the_post();
        
        $title = the_title();
        
        $link = the_permalink();
        
        $thumbnail = the_post_thumbnail();
        
        $trim_title = trim_title_words(7, '...');
        
        echo '<li><a href="' . $link . '" rel="bookmark" title="' . $title . '">' . $thumbnail . '<br />' . $trim_title . '</a></li>';
    }
    
    echo '</ul>';
    
} else {
    
    $category_ids = array();
    
    foreach ($categories as $individual_category)
    
        $category_ids[] = $individual_category->term_id;
    
    $args = array(
        'category__in' => $category_ids,
        'post__not_in' => array(
        
            $post->ID
        ),
        'showposts' => 4,
        'orderby' => rand,
        'caller_get_posts' => 1
    );
    
    $my_query = new wp_query($args);
    
    echo '<ul>';
    
    while ($my_query->have_posts()) {
        
        $my_query->the_post();
        
        $title = the_title();
        
        $link = the_permalink();
        
        $thumbnail = the_post_thumbnail();
        
        $trim_title = trim_title_words(7, '...');
        
        echo '<li><a href="' . $link . '" rel="bookmark" title="' . $title . '">' . $thumbnail . '<br />' . $trim_title . '</a></li>';
    }
    echo '</ul>';
}

wp_reset_query();

?>

</div>
 
Сан Евгенич, что-то непонятно вышло... но материалы по категории все же не выходят(
Один из лучших хостингов.
Одна из лучших партнерок.
Продаю плагины гаданий и гороскопа!
что означает

Цитата
Armen Adamyan пишет:
что-то непонятно вышло
я же не вижу что там выходит.
Сан Евгенич, это страница без тегов... но в соответствующей категории есть один материал: http://wiki-web.ru/komp/oshibka-style-error-2134.html
а это станица с тегами: http://wiki-web.ru/webmaster/wp/sozdanie-sajta-na-wordpress.html

под статьей "Похожие материалы"
Я правильно понял, что на странице где есть теги http://wiki-web.ru/webmaster/wp/sozdanie-sajta-na-wordpress.html вывелись стаьи и по тегам и по категориям, а там где тегов нет http://wiki-web.ru/komp/oshibka-style-error-2134.html ничего не вывелось?
Сан Евгенич, проблема оказывается вот в чем.. я еще одну статью добавил... без тегов... так вот... вывелись материалы по категории.
условие работает.. только если вообще нет тегов))

но вот как это исправить?
Распечатайте  $args перед   $my_query = new wp_query($args); в первом блоке при разных условиях. заодно и код сократить можно будет
Изменено: Сан Евгенич - 9 Декабря 2015 15:43
Сан Евгенич, а можно точно?
просто я php полностью не знаю.. а так больше ошибок сделаю


Код
<div class="related_posts">
<p>Похожие материалы</p>
<?php
//for use in the loop, list 5 post titles related to first tag on current post
$tags = wp_get_post_tags($post->ID);
$categories = get_the_category($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, // Добавляем условие сортировки рандом (случайный подбор)
 'post__not_in' => array($post->ID),
 'showposts'=>4 // Цифра означает количество выводимых записей
);
$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(); ?>">
<?php the_post_thumbnail(); ?><br /><?php trim_title_words(7, '...'); ?></a></li>
<?php
}
echo '</ul>';

}
wp_reset_query();
}

else  {
$category_ids = array();
foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
$args=array(
'category__in' => $category_ids,
'post__not_in' => array($post->ID),
'showposts'=>4,
'orderby'=>rand,
'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();
?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>">
<?php the_post_thumbnail(); ?><br /><?php trim_title_words(7, '...'); ?></a></li>
<?php
}
echo '</ul>';
}
wp_reset_query();

}

?>
</div>
 
НУ блин на ощупь конечно много не сделаешь. Вот это втсавьте и посмотрите, что выводится когда совсем нет тегов, когда есть теги но без совпадений, когда есть совпадения
Код
<?php

 $tags = wp_get_post_tags($post->ID);
    
    $tag_ids = array();
    
    foreach ($tags as $individual_tag){
    
        $tag_ids[] = $individual_tag->term_id;
    }
print_r ($tag_ids);
 
Страницы: Пред. 1 2
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
18:07 ИКС Яндекс АПдейт 1 апреля 2026. Обновлён алгоритм расчёта 
19:02 Gambling Craft - гемблинг по белому 
17:03 LOSPOLLOS.COM - Конвертим по рецепту Хайзенберга. Dating, Mainstream, Binary Options 
15:51 Яндекс-ап 20 марта и похороны ChatGPT, Claude и Gemini. Считаем убытки 
10:16 Бесплатное расширение для Chrome — проверка ссылок прямо на странице 
10:12 Gmail разрешил менять основной адрес - теперь можно убрать старые ники без переноса аккаунта 
18:01 Раскрутка форума 
19:38 Monitex: Мониторинг с кэшбэком 80% в USDT 
19:31 Мониторинг обменников Сrypto-scout.io 
16:22 Рассылки СМС/SMS, Вайбер/Viber, Ватсап/Whatsapp, Телеграм/Telegram любой тематики по всему миру 
13:14 Аккаунты HeadHunter - Продам/верифицирую аккаунты работодателей hh.ru (HeadHunter, HH.RU, ХХ ) 
13:14 Продам аккаунты HeadHunter (Верификация на ИП) 
11:36 Продам сайт - продукты питания 
08:16 PROSMM-SHOP — Надёжный сервис продвижения в социальных сетях 
20:37 Точные прогнозы на футбол 
12:36 молодильные яблоки и живая вода 
04:35 Ставки на супер тренды в спорте 
15:49 Огородники 
16:25 8 марта: желаю аптайма 99.9% и e-e-a-t без локов 
22:45 С юмором по жизни! 
15:42 Голландцы влепили Grok по яйцам - теперь нельзя раздевать реальных людей, штраф 100к евро в день