Копирование классов изображений в контейнер wrapping div в WordPress

я хотел бы обернуть div-контейнер вокруг изображения в WordPress.

Это то, что у меня есть:

<div class="image-container">

   <img class="alignleft size-full wp-image-24" src="http://example.com/wp-content/uploads/header01.jpg" alt="" width="512" height="512" />

</div>

Это то, чего я хочу:

<div class="image-container alignleft size-full">

   <img class="" src="http://example.com/wp-content/uploads/header01.jpg" alt="" width="512" height="512" />

</div>

Я хочу скопировать классы изображения в контейнер и удалить классы изображения.

Я знаю, что могу удалить классы изображения, как это:

add_filter('get_image_tag_class', '__return_empty_string');

Но как получить классы в контейнере?

Спасибо за помощь.

1 ответ

  1. Я решил проблему.

    function wrap_my_div($html, $id, $alt, $title, $align, $size){
        preg_match('/class="(.*)?"/', $html, $alignment);
        $html = preg_replace('/class="(.*)?"/', '', $html);
        $html = '<div class="image-container '. $alignment[1] .'">' . $html . '</div>';
        return $html;
    }
    add_filter('get_image_tag', 'wrap_my_div', 10, 4);
    

    Я должен взглянуть на регекс.