Изменить вывод изображения в содержимом


Я пытаюсь внедрить JAIL javascript в свою установку WordPress. Javascript требует, чтобы я добавил атрибут данных и изменил выходной html-код изображений.

Я просматривал кодекс в поисках фильтров или крючков, которые могли бы мне помочь, но я ничего не могу найти. У кого-нибудь есть решение?

Author: andeersg, 2013-01-04

1 answers

Вам лучше добавить свои пользовательские данные изображения, когда вы вставляете их в сообщение с помощью media_send_to_editor, с оговоркой, что это не будет применено ни к каким существующим изображениям, только к тем, которые были вставлены после добавления функции.

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

Пример media_send_to_editor:

function WPSE_78285_Mime($html, $id) {

    //fetching attachment by post $id
    $attachment = get_post($id); 
    $mime_type = $attachment->post_mime_type;

    //get an valid array of images types   
    $image_exts = array( 'image/jpg', 'image/jpeg', 'image/jpe', 'image/gif', 'image/png' );

    //checking the above mime-type
    if (in_array($mime_type, $image_exts)) { 

        // the image link would be great
        $src = wp_get_attachment_url( $id );

        // enter you custom output here, you will want to probably change this
        $html = '<a href="' . $src .  '" class="your-class" data-src="/img/image1.jpg" rel="your-rel"><img src="'. $src .'" /></a>';
        return $html; // return new $html    
    }
        return $html;
}

add_filter('media_send_to_editor', 'WPSE_78285_Mime', 20, 2);
 2
Author: Wyck, 2013-01-05 18:48:04