Un peu compliqué pour moi malgré la doc... Si qqln sait convertir facilement ce filtre pour un "content" wordpress qui marche avec php5 mais qui est déprécié dans php7.
Il s'agit de remplacer preg_replace par preg_replace_callback.
Le truc un peu compliqué c'est au niveau de la function{} qui arrive à la place de (par exemple) '<img$1data-$2$3>' ou '<img$1class="$2 lazy-load"$3>' ou '<img class="lazy-load"$1>'
C'est surtout au niveau de la syntaxe que je sèche...
Sinon j'ai trouvé cette function
mais je préférerais adapter l'autre plus "soft".
Si qqln est suffisamment àlaise ? en PHP ? Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 add_filter('the_content', function ($content) { //-- Change src/srcset to data attributes. $content = preg_replace("/<img(.*?)(src=|srcset=)(.*?)>/i", '<img$1data-$2$3>', $content); //-- Add .lazy-load class to each image that already has a class. $content = preg_replace('/<img(.*?)class=\"(.*?)\"(.*?)>/i', '<img$1class="$2 lazy-load"$3>', $content); //-- Add .lazy-load class to each image that doesn't already have a class. $content = preg_replace('/<img((.(?!class=))*)\/?>/i', '<img class="lazy-load"$1>', $content); return $content; });
Partager