Страница архива категории WordPress с указанием: неопределенное смещение: ошибка - PullRequest
0 голосов
/ 20 апреля 2020

Сейчас я нахожусь по этому URL:

http://myproject.test/category/learn/

Теперь я хочу показать первые 4 сообщения с таким же дизайном, но последнее сообщение эти 4 поста будут тем постом, мета-ключ которого равен спонсорскому_посту, а мета-значение равно 1

, а остальные посты будут другим дизайном.

Итак, в категрии. php страница У меня есть этот код:

<?php  
if( have_posts() ) {
    $counter = 1;
    echo '<div class="row">';
        while( have_posts() ) {
            the_post();
            if( $counter <= 3 ) {
                echo '<div class="col-md-6">';
                    get_template_part( 'loop-templates/content', 'category-box-post');
                echo '</div>';
            } elseif( $counter == 4 ) {
                echo '<div class="col-md-6">';                                        
                   get_template_part( 'template-parts/category-archive-sponsored-post' );
                echo '</div>';
            } else {
                echo '<div class="col-md-12">';
                    get_template_part( 'loop-templates/content', 'category-horizental-post');
                echo '</div>';
            }                            
            $counter++;
        }
    echo '</div>';              
} else {
    _e( 'No post found!', 'everstrap' );
}
?>

Теперь вы можете увидеть эту строку:

 get_template_part( 'template-parts/category-archive-sponsored-post' );

Он считает номер 4, и в этом посте с 4-м номером я хочу показать сообщение с мета-ключом / значением;

Итак, пост категории-архива-спонсора. php код

$args = array(
    'posts_per_page' => 1,
    'orderby' => 'publish_date',
    'tax_query' => array(
        array(
            'taxonomy' => 'category',
            'field' => 'slug',
            'terms' => array(
                $queried_object->slug
            )
        )
    ),
    'meta_query' => array(
        array(
            'key' => 'sponsored_post',
            'value' => '1',
            'compare' => '=',
        )
    )
);

$posts = get_posts( $args );

if( $posts ) {
     foreach ( $posts as $post ) {
         setup_postdata( $post );
         the_title();
     }
     wp_reset_postdata();
}

Но я получил сообщение об ошибке, похожее на это:

Notice
: Undefined offset: 4 in
C:\laragon\www\my-project\wp-includes\class-wp-query.php
on line
3275

Я думаю, что-то не так в 4-м пост-запросе? Есть ли решение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...