@GoggleMoggle

Parse error: syntax error, unexpected 'endwhile' (T_ENDWHILE) Как исправить?

Здравствуйте, есть сайт на WP на кастомной теме, собранный через acf, на хосте всё работает отлично, но при попытке развернуть локально
Parse error: syntax error, unexpected 'endwhile' (T_ENDWHILE) in C:\xampp\htdocs\wp-content\themes\easyrenovation\functions.php on line 848

Код function php проблемный прилагаю, уже перерыл всё, не могу понять причину данного поведения кода
function load_posts(){

  $args = unserialize(stripslashes($_POST['query']));

  $args['paged'] = $_POST['page'] + 1; // следующая страница

  $args['post_status'] = 'publish';

  $q = new WP_Query($args);

  if( $q->have_posts() ){?>

	  <? while($q->have_posts()): $q->the_post();?>
            <li class="col-md-4 loaded">
                <a href="<?=wp_get_attachment_image_src(get_field('photo'), 'full')[0];?>" data-fancybox="gallery" class="item__image">
                    <img src="<?=wp_get_attachment_image_src(get_field('photo'), 'preview')[0];?>" alt="<?=the_title()?>">
                </a>
            </li>
		<?php
	  endwhile; ?>
  <?}
    endwhile;

    wp_reset_postdata();
  die();
}
add_action('wp_ajax_showmore', 'load_posts');
add_action('wp_ajax_nopriv_showmore', 'load_posts');

function true_load_posts(){
    $args = unserialize(stripslashes($_POST['query']));
    $args['paged'] = $_POST['page'] + 1; // СЛЕДУЮЩАЯ СТРАНИЦА
    $args['post_status'] = 'publish';
    $q = new WP_Query($args);
    if( $q->have_posts() ){
        while($q->have_posts()){
            $q->the_post();
            $term_list = wp_get_post_terms(get_the_ID(), 'review_category', array("fields" => "all"));
            $category = $term_list[0]->name;
?>
<li>

    <div class="item__block">
        <div class="review__stars">
            <i class="fas fa-star"></i>
            <i class="fas fa-star"></i>
            <i class="fas fa-star"></i>
            <i class="fas fa-star"></i>
            <i class="fas fa-star"></i>
        </div>
        <div class="review__text"><?=get_field('text')?></div>
        <div class="review__name"><?=get_field('name')?></div>
        <div class="review__city"><?=get_field('city')?></div>
        <div class="review__category <?=strtolower($category)?>"></div>
    </div>
</li>
<?php
}};
    wp_reset_postdata();
    die();
}
add_action('wp_ajax_loadmore', 'true_load_posts');
add_action('wp_ajax_nopriv_loadmore', 'true_load_posts');
?>
  • Вопрос задан
  • 138 просмотров
Пригласить эксперта
Ответы на вопрос 2
Используй только полные открывающие php-тэги
Ответ написан
Комментировать
@galaxy
Какая же богомерзкая кодо-лапша... Неудивительно в ней что-то потерять. Почему тут endwhile два раза?
endwhile; ?>
  <?}
    endwhile;
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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