Disabilitare LazyLoad sui dispositivi mobili

In questo articolo

Disabilitare LazyLoad su dispositivi mobili - Cache Mobile attiva

A volte LazyLoad funziona perfettamente su desktop, ma può causare qualche problema sui dispositivi mobili. Quando attivi sia la Cache Mobile più l'opzione secondaria Crea un file di cache per i visitatori da dispositivo mobile, puoi usare la seguente porzione di codice in un MU plugin per disattivare LazyLoad da dispositivo mobile:

1

Crea una cartella chiamata  mu-plugins dentro la directory wp-content
Nel caso in cui la cartella mu-plugins esista già, non crearne una nuova, usa semplicemente quella esistente.

2

Usando un editore di testo basico, crea un nuovo file e inserisci il seguente codice:

<?php
defined( 'ABSPATH' ) or die( 'Cheatin&#8217; uh?' );
/**
 * Plugin Name: WP Rocket | UnLazyLoad Mobile
 * Description: Disables LazyLoad When Mobile Caching Active
 * Author:      WP Rocket Support Team
 * Author URI:  http://wp-rocket.me/
 * License:     GNU General Public License v3 or later
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 */

add_filter( 'wp', '__deactivate_rocket_lazyload_only_on_mobile' );
function __deactivate_rocket_lazyload_only_on_mobile() {
	if( class_exists( 'Rocket_Mobile_Detect' ) && get_rocket_option( 'do_caching_mobile_files', false ) ) {
		$detect = new Rocket_Mobile_Detect();
	
		if ( $detect->isMobile() && ! $detect->isTablet() ) {
			// Images
			add_filter( 'do_rocket_lazyload', '__return_false' );
			
			// Iframes
			add_filter( 'do_rocket_lazyload_iframes', '__return_false' );
		}
	}
}
	
3
Salva il file come  wp-rocket-unlazyload-mobile.php
4
Carica questo file dentro la cartella  mu-plugins che hai creato al punto 1.
5
Infine, assicurati di disattivare e riattivare  WP Rocket.

Disabilitare LazyLoad su dispositivi mobili - Cache Mobile non attiva

Se hai attivato LazyLoad, questa opzione rimarrà attiva anche sulle pagine non in cache, per default.

Se vuoi disabilitare LazyLoad nei dispositivi mobili, puoi fare quanto segue:

1

Disabilita la cache per dispositivi mobili nelle Opzioni di Base di WP Rocket.

2

Crea una cartella chiamata  mu-plugins dentro la directory wp-content
Nel caso in cui la cartella mu-plugins esista già, non crearne una nuova, usa semplicemente quella esistente.

3

Usando un editor di testo basico, crea un nuovo file e incolla il seguente codice: 

<?php
defined( 'ABSPATH' ) or die( 'Cheatin&#8217; uh?' );
/**
 * Plugin Name: WP Rocket | UnLazyLoad Mobile
 * Description: Disables LazyLoad for mobile devices.
 * Author:      WP Rocket Support Team
 * Author URI:  http://wp-rocket.me/
 * License:     GNU General Public License v3 or later
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 */

if ( wp_is_mobile() ) {
	add_filter( 'do_rocket_lazyload', '__return_false' );
}
	
3
Salva il file come  wp-rocket-unlazyload-mobile.php
4

Carica questo file dentro la cartella mu-plugins che hai creato al punto 1.

5

Infine, assicurati di  disattivare e riattivare WP Rocket.

Note: questo procedimento funziona solo quando la cache per dispositivi mobili è stata disabilitata, come descritto al punto 1.