GeorgeGeorge
@GeorgeGeorge
Студент

Не выводится контент в wordpress после get_posts()?

Всем привет! На главной странице сайта вывожу записи без категории. Записи выводятся нормально и без косяков, но контент (сам текст страницы) после вывода записей пропадает! Не пойму в чём дело. Может было у кого подобное ?
define('WP_DEBUG', true) выводит ошибку /wp-includes/functions.php on line 3891 Notice: Вызванный метод конструктора класса WP_Widget в WCCTM_Widget считается устаревшим с версии 4.3.0! Используйте
__construct() - не думаю, что проблема в этом, так как остальные страницы работают без этого вывода работают
Сам вывод записей:
<?php 
	if (is_front_page()) {
?>
<section class="carousel">
    <ul class="carousel__items">
        <?php
			global $post;
			$posts = get_posts("category=1&orderby=date"); 
			 if ($posts) { 
       			foreach ($posts as $post) { 
					setup_postdata($post); 
					$thumbnail = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), "large");
					$postTitle = $post->post_title;
					$postContent = $post->post_content;
					$postLink = get_permalink($post->ID);
		?>
                <li class="carousel__item" style="background: url(<?php echo $thumbnail[0]; ?>);">
                    <section class="carousel__bg">
                        <div class="carousel__title">
                            <span class="carousel__title-text">
                                <?php echo $postTitle; ?>
                            </span>
                        </div>
                        <div class="carousel__desc">
                            <span class="carousel__desc-text">
                                <?php echo wp_trim_words($postContent, 20); ?>
                            </span>
                        </div>
                        <a href="<?php echo $postLink; ?>"
                           class="default-button default-button_size_m default-button_flat carousel__more-button">
                            <span class="button__text">
                                Подробнее
                            </span>
                        </a>
                    </section>
                </li>
            <?php } wp_reset_postdata(); ?>
        <?php } ?>
    </ul>
    <section class="carousel__controls">
        <button id="carousel__button_prev" type="button"
                class="carousel__button default-button default-button_flat">
            <span class="button__text">
                <i class="fa fa-angle-left"></i>
            </span>
        </button>
        <button id="carousel__button_next" type="button"
                class="carousel__button default-button default-button_flat">
            <span class="button__text">
                <i class="fa fa-angle-right"></i>
            </span>
        </button>
    </section>
</section>
<?php } ?>
  • Вопрос задан
  • 501 просмотр
Пригласить эксперта
Ответы на вопрос 2
но контент (сам текст страницы) после вывода записей пропадает!

Я так полагаю, что вы перекрываете глобальный цикл (в котором контент страницы) вашим кастомным выводом, да еще и вот так напрямую. Попробуйте использовать wp_reset_query() вместо wp_reset_postdata(). Разница в том, что первый метод вернет глобальный цикл в изначальное состояние.

Кроме того, нет никакой необходимости юзать глобальную переменную $post (в которой, кстати, у вас уже лежит ваш контент страницы, а вы потом перекрываете ее циклом), где нужно, WP сам ее подтянет. Эту строчку тоже удалите. Должно будет заработать.
Ответ написан
@Titamik
Я тут задаю самые глупые вопросы..
В таком случае используй custom fildes - в одельное поле вписывай контент после статей и выводи его после голобального цикла
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы