william666
@william666

Как выделить текущий пост в new WP_Query?

вывожу 5 записей в сайдбаре:

<?php 
$args = array (
     'post_type'               => 'jobs',
     'posts_per_page'          => '5' ,
     'ignore_sticky_posts'     => false ,
    // 'post__not_in'            => array(get_the_ID ())
);
$this = ?????????
$query = new WP_Query ($args);

if ($ query-> have_posts ()): 
     while ($query-> have_posts ()): $query-> the_post (); ?>
<?php if($this){ ?>
     <?php the_title();?> 
<?php } else { ?>
     <a href="<?php echo get_permalink(); ?>"><?php the_title();?></a>
<?php }?>
    <?php end while ;
endif ;

wp_reset_postdata (); ?>


сайдбар размещен в single-jobs.php

как заголовок текущий записи (single-jobs) оставить без ссылки в сайдбаре ?
  • Вопрос задан
  • 168 просмотров
Решения вопроса 1
deniscopro
@deniscopro Куратор тега WordPress
WordPress-разработчик, denisco.pro
Попробуйте так:
<?php 
$current_post_id = get_the_ID(); // ещё можно попробовать функцию get_queried_object_id()
$args = array (
     'post_type'               => 'jobs',
     'posts_per_page'          => '5' ,
     'ignore_sticky_posts'     => false ,
    // 'post__not_in'            => array(get_the_ID ())
);
$query = new WP_Query ($args);

if ($ query-> have_posts ()): 
     while ($query-> have_posts ()): $query-> the_post (); ?>
<?php if( get_the_ID() == $current_post_id ){ ?>
     <?php the_title();?> 
<?php } else { ?>
     <a href="<?php the_permalink(); ?>"><?php the_title();?></a>
<?php }?>
    <?php end while ;
endif ;

wp_reset_query(); ?>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы