focuspro
@focuspro

Как добавить Div, обернуть изображения в посте Wordpress?

Есть код

function breezer_addDivToImage( $content ) {

   // A regular expression of what to look for.
   $pattern = '/(<img([^>]*)>)/i';
   // What to replace it with. $1 refers to the content in the first 'capture group', in parentheses above
   $replacement = '<div class="myphoto">$1</div>';

   // run preg_replace() on the $content
   $content = preg_replace( $pattern, $replacement, $content );

   // return the processed content
   return $content;
}

add_filter( 'the_content', 'breezer_addDivToImage' );


Код работает, но если у изображения есть подпись (caption), то код не оборачивает картинку в DIV и вся верстка рвется...

Видимо регулярное выражение не правильно, паттерн должен находить
<div id="attachment_38847" style="width: 1610px" class="wp-caption alignnone"><img src="http://test.com/wp-content/uploads/2016/12/224157043765335545.jpg" alt="mers"><p class="wp-caption-text">Mers</p></div>
  • Вопрос задан
  • 532 просмотра
Пригласить эксперта
Ответы на вопрос 1
ShadowOfCasper
@ShadowOfCasper
Middle User Interface Web Developer
Значит нужно изменить паттерн для картинки
$pattern = '/(<img%>)/';
Попробуй так
Ответ написан
Ваш ответ на вопрос

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

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