Вывод постов
Учусь создавать свою тему с 0-я. В файле index.php есть такой код:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <div class="post"> <!-- начало поста --> <h3 class="post-title"><?php the_title(); ?><!-- Заглавие поста --></h3> <p class="post-text"> <?php the_content(); ?> </p> <!-- конец поста --> </div> <?php endwhile; ?> <!-- --> <?php else: ?> <!-- posts not found --> <?php endif; ?> </div>
Как видите, заглавия и сам текст поста выводятся в теги с определенным .css оформлением.
Вод код css:
.post { max-width: 500px; width: 100%; min-width: 320px; height: 200px; word-wrap: break-word; display: block; } .post-title { margin: 5px auto; } .post-text { font-style: italic; font-size: 20px; color: white; }
На выходе получаю все записи, но оформление не приходит а в консоли, вижу что мои теги
<p class="post-text"></p> - пустые, а вместо них, сам текст поста выводится в обыкновенном <p>. Пробовал в админке текст поста менять на обычный - либо добавлялся тэг <pre> либо <p>. Подскажите в чем проблема, как её можно решить?
Замени на это
И почитай в чем разница:
https://wp-kama.ru/function/get_the_content
Я бы для начала сделал так:
А стили для h3 и p относящиеся к <div class="post"> прописывать в css следующим образом:
the_content() сам оборачивает в p теги, поэтому тебе нужно его обернуть в div.
А то у тебя получается p тег и внутри него появляются еще p теги, который в результате вылазят наружу потому что браузер не позволяет содержать p внутри p...
Или можно просто использовать как есть...