#php #html #css
Вопрос:
<?php
$recent_posts = wp_get_recent_posts(array('post_type'=>'projet'));
foreach( $recent_posts as $recent ){
echo '<li><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li> ';
if ( has_post_thumbnail( $recent["ID"]) ) {
echo get_the_post_thumbnail($recent["ID"],'thumbnail');
}
if (has_excerpt($recent["ID"]) ){
// echo get_the_excerpt($recent["ID"],'the_excerpt');
echo '<p class="excerpt">' . get_the_excerpt($recent["ID"],'the_excerpt') . '</p>';
}
}
?>
Привет, я хотел бы знать, как поместить весь мой foreach
цикл в div ? Я хочу, чтобы каждый $recent_posts
из них был внутри div, прямо сейчас они идут один за другим. (кстати, это мой первый пост здесь, извините, если я не совсем ясно выразился)
##РЕДАКТИРОВАТЬ## Вот мой html :
<h2><a href="http://localhost/wordpress/projet/projet-3/" title="Look Maquette UX/UI">Maquette UX/UI</a></h2> <img width="150" height="150" src="http://localhost/wordpress/wp-content/uploads/2021/04/vignette_maquette-150x150.jpg" class="attachment-thumbnail size-thumbnail wp-post-image"
alt="" loading="lazy" />
<p class="excerpt">Projet 1</p>
<h2><a href="http://localhost/wordpress/projet/projet-2/" title="Look Intégration Baniera">Intégration Baniera</a></h2> <img width="150" height="150" src="http://localhost/wordpress/wp-content/uploads/2021/04/vignette_baniera_homepage-150x150.jpg" class="attachment-thumbnail size-thumbnail wp-post-image"
alt="" loading="lazy" />
<p class="excerpt">Projet 2</p>
<h2><a href="http://localhost/wordpress/projet/projet-1/" title="Look Intégration PHP">Intégration PHP</a></h2> <img width="150" height="150" src="http://localhost/wordpress/wp-content/uploads/2021/04/order_homepage-150x150.jpg" class="attachment-thumbnail size-thumbnail wp-post-image"
alt="" loading="lazy" />
<p class="excerpt">Projet 3</p>
<p class="excerpt"></p>
</div>
И я хочу, чтобы каждая «группа» была внутри div, прямо сейчас они все вместе
Хорошо, теперь это работает, я завернул содержимое foreach
примерно так :
<?php
$recent_posts = wp_get_recent_posts(array('post_type'=>'projet'));
foreach( $recent_posts as $recent ){
echo '<div class="foreach_wrapper">';
echo '<h2><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a></h2> ';
if ( has_post_thumbnail( $recent["ID"]) ) {
echo get_the_post_thumbnail($recent["ID"],'thumbnail');
}
if (has_excerpt($recent["ID"]) ){
// echo get_the_excerpt($recent["ID"],'the_excerpt');
echo '<p class="excerpt">' . get_the_excerpt($recent["ID"],'the_excerpt') . '</p>';
}
echo '</div>';
}
?>
Комментарии:
1. Привет, Хуан, можешь ли ты опубликовать полученный HTML-код того, что у тебя есть сейчас, и пример того, каким бы ты хотел видеть свой результат?
2. @хуан, какого результата ты хочешь? и каков текущий результат?
3. Я только что отредактировал свой пост
4. Я понимаю
echo '<li>...
— ИLI
у элементов не может быть братьев и сестер, кромеLI
s5. @Juan Вы хотите добавить каждый пункт и заголовок в отдельную
div
или полную существующую структуру телаdiv
?
Ответ №1:
Вы можете повторить div вокруг каждого, небольшое примечание, вы используете <li>
элемент, но забыли <ul>
обертку, пожалуйста, проверьте свой HTML с помощью валидатора HTML.
<?php
echo '<div>'; /* I added this */
$recent_posts = wp_get_recent_posts(array('post_type'=>'projet'));
foreach( $recent_posts as $recent ){
echo '<li><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li> ';
if ( has_post_thumbnail( $recent["ID"]) ) {
echo get_the_post_thumbnail($recent["ID"],'thumbnail');
}
if (has_excerpt($recent["ID"]) ){
// echo get_the_excerpt($recent["ID"],'the_excerpt');
echo '<p class="excerpt">' . get_the_excerpt($recent["ID"],'the_excerpt') . '</p>';
}
}
echo '</div>'; /* I added this */
?>
Комментарии:
1. Спасибо, я попробую это сделать !