Мне нужна помощь с эхом

  • Автор темы omurz
  • 45
  • Обновлено
  • 17, May 2024
  • #1
Привет ребята, Может ли кто-нибудь мне здесь немного помочь?

У меня есть этот PHP-код:
 

<div class="crp_related">

<ul><li>

<a href="##URL1##"><img width="200" height="200" src="##IMAGE1##" class="attachment-related-thumb size-related-thumb wp-post-image" alt=""></a>

<span class="crp_title" style="bottom:4px;">##TITLE1## ...</span>

</li>

<li>

<a href="##URL2##"><img width="200" height="200" src="##IMAGE2##" class="attachment-related-thumb size-related-thumb wp-post-image" alt=""></a>

<span class="crp_title" style="bottom:4px;">##TITLE2## ...</span>

</li>

</ul>

<div class="crp_clear">

</div></div>

PHP: А это HTML-код, который отображается в исходном коде:
  <div class="crp_related"> <ul><li> <a href="##URL1##"><img width="200" height="200" src="##IMAGE1##" class="attachment-related-thumb size-related-thumb wp-post-image" alt=""></a> <span class="crp_title" style="bottom:4px;">##TITLE1## ...</span> </li></ul> <div class="crp_clear"> </div></div> <div class="crp_related"> <ul><li> <a href="##URL2##"><img width="200" height="200" src="##IMAGE2##" class="attachment-related-thumb size-related-thumb wp-post-image" alt=""></a> <span class="crp_title" style="bottom:4px;">##TITLE2## ...</span> </li></ul> <div class="crp_clear"> </div></div> 
HTML: И это HTML, который я хочу показать в исходном коде:
  <?$args = array( 'post_type' => 'videos', 'posts_per_page' => 10 ); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); echo '<div class="crp_related "><ul><li>'; echo '<a href="'; the_permalink(); echo '">'; the_post_thumbnail('related-thumb'); echo '</a>'; echo '<span class="crp_title" style="bottom:4px;">'; if (strlen($post->post_title) > 28) { echo substr(the_title($before = '', $after = '', FALSE), 0, 28) . '...'; } else { the_title(); } echo '</span>'; echo '</ul></li>'; echo '<div class="crp_clear"></div></div>'; endwhile; ?> 
HTML: Есть идеи, как это сделать? Я думаю, что основная проблема заключается в том, что тег «ul» появляется несколько раз, а мне нужно, чтобы он появился только один.

И другие повторяющиеся коды классов, например... ПОМОЩЬ

omurz


Рег
21 Sep, 2013

Тем
1

Постов
3

Баллов
13
  • 20, May 2024
  • #2
Вероятно, поможет еще больше, если вы ПРЕКРАТИТЕ использовать несколько эхо для выполнения работы одного эха, ПРЕКРАТИТЕ использовать дурацкую структуру «end while», которая НИКОГДА не должна была существовать в PHP, отформатируете свой PHP-код с разумными отступами и отформатируете свой вывод в простота в отладке.

Я бы, вероятно, также отключил поддержку PHP 5.3/более ранних версий и использовал массивы в квадратных скобках, а не использовал самое короткое открытие короткого тега, которое вообще не должно быть ВКЛЮЧЕНО в вашей конфигурации PHP!



Поскольку они являются единственным диапазоном, маловероятно, что им тоже нужны классы, а поскольку UL является совершенно хорошим контейнером блочного уровня, для чего вообще нужен DIV? Гораздо меньше устаревшего DIV для очистки мусора, как будто это все еще 2003 год, и статический стиль разметки.



и помните, троичные операторы - ваш друг! ... и люди задаются вопросом, почему я называю это «какашками». О, я почти уверен, что параметры кода the_title тоже ерунда. ОЧЕНЬ маловероятно, что у вашего кода есть какая-либо законная причина, чтобы это было намного больше, чем:
 <?php

$args = [

'post_type' => 'videos',

'posts_per_page' => 10

];

$loop = new WP_Query( $args );

echo '

<ul class="crp_related">';

while ($loop->have_posts()) {

$loop->the_post();

echo '

<li>

<a href="', the_permalink(), '">

', the_post_thumbnail('related-thumb'), '

</a>

<span>', (

strlen($title= the_title('', '', false)) > 28 ?

substr($title, 0, 28) :

$title

), '</span>

</li>';

}

echo '

</ul>';
PHP: Вам нужно нижнее дополнение? Поместите это в свою чертову ВНЕШНЮЮ таблицу стилей.

Что бы вы ни делали с двумя DIV, во всех случаях, кроме самых редких, делайте это с UL. Черт, в зависимости от того, как вы его стилизуете, вам может даже не понадобиться диапазон. Глупое пыхтение while : end while - тому, кто думает, что это принадлежит PHP, нужно дать пинок в пах, а затем кулак по лицу - хотя, честно говоря, я говорю то же самое о heredoc и nowdoc.
 

skivskiv


Рег
21 Aug, 2010

Тем
0

Постов
5

Баллов
5
Тем
49554
Комментарии
57426
Опыт
552966

Интересно