do_shortcode закрыть абзац, который не существует - PullRequest
0 голосов
/ 28 марта 2019

Я создал простой шорткод для отображения заголовка со значком слева от него. Каким-то образом шорткод отображается с вставкой закрывающего (сиротского) тега

.
function tiemme_title_with_icon ( $atts, $content = null ) {
  extract( shortcode_atts( array(
    'ico' => '',
    'text' => 'title',
  ), $atts ) );

  ob_start();

  printf('<div class="title_with_icon"><span class="detail_title ico-%s">%s</span></div>', $ico, $text);

  if($content) {
    echo '<div class="serv_content"><div class="detail__text pad-icon-indent">';
    echo do_shortcode($content);
    echo '</div></div>';
  }

  return ob_get_clean();
}

код возвращает следующий результат

<div class="title_with_icon">
  <span class="detail_title ico-puntivendita">TITLE</span>
</div>
<div class="serv_content">
  <div class="detail__text pad-icon-indent">
    </p>  <!-- this P tag is the one to remove! -->
    <p>REAL AND GOOD CONTENT</p>
  </div>
 </div>
...