WordPress: racchiudere le immagini in elementi HTML arbitrari

WordPress: racchiudere le immagini in elementi HTML arbitrari

Assecondare le richieste dei clienti su WordPress significa principalmente cercare di intuire quello di cui potrebbero aver bisogno in futuro. In genere sono pochi i clienti che hanno una conoscenza di WordPress tale da permettergli di gestire un sito in totale autonomia. Un caso tipico è rappresentato dalle immagini inserite nei post senza passare dai contenitori HTML di WordPress (per esempio tramite URL remoti inseriti in tag img). In questo caso le nostre regole CSS vengono bypassate completamente perchè ci troviamo con immagini inserite a caso nel resto della marcatura. Possiamo usare un filtro per racchiudere queste immagini in una struttura HTML scelta da noi. Vediamo come fare.

Inserite il seguente codice nel file functions.php:


function wrap_images_with($content){
    return preg_replace('/<img (.*) \/>\s*/iU', '<div class="image"><img \1 /></div>', $content);
}
add_filter('the_content', 'wrap_images_with');

Il codice crea un wrapper intorno alle immagini con l'elemento con classe image. Ora ci troviamo con una struttura normalizzata che è più semplice da gestire, sia con i CSS che con JavaScript o jQuery.

Torna su