2015-03-23 3 views
0

Im используя видео-сайт с WordPress и Мой LazyLoad работает таким образомЗамена всех Scr с данными URL-адрес lazyloading в WordPress

<img class="b-lazy" src=data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== data-src="images/image.jpg" data-src-small="images/image.jpg" alt="alt text" class="tmb_img"/> 

Я figuret его для WordPress эскизов Но Im используя видео-захват, который захватывает многократные миниатюры

изображения взяты из plguin в этой форме;

<img id="latest-196" class="img-responsive" alt="alt text" onmouseout="thumbStop('latest-196', 'xxxxxx/wp-content/uploads/multi-thumbs/96/', '3');" onmouseover="thumbStart('latest-196', 15, ''xxxxxx/wp-content/uploads/multi-thumbs/96/');" src="'xxxxxx/wp-content/uploads/multi-thumbs/96/196_3.jpg"> 

Есть ли способ конвертировать второй тип с первым, используя любую функцию для добавления ленивой загрузки?

Надеюсь, вы понимаете мой вопрос. Спасибо.

ответ

0

Вы можете использовать буферизацию вывода, как описано here, а затем использовать preg-replace, чтобы отредактировать, что вам нужно.

Так что это может быть ваш шаблон для изображений:

<div id="images"> 
    <?php 
    // start output buffering 
    ob_start(); 
    // get the images 
    $images = get_images_from_video_grabber(); 
    foreach ($images as $im_tag) { 
     echo $im_tag; 
    } 
    // get the buffer and end output buffering 
    $output = ob_get_clean(); 
    // replace what you need 
    $pattern = '~<img (.+)src="(.+)">~'; 
    $replacement = '<img \\1src="data:image/gif;base64,..." data-src="\\2">'; 
    $output = preg_replace($pattern, $replacement, $output); 
    // echo the buffer 
    echo $output; 
    ?> 
</div> 

Есть, возможно, более элегантные решения (с помощью фильтров и действия), но, не зная, какое видео граббер вы используете я не могу проверить.

+0

спасибо большое :) – Gazi

Смежные вопросы