WordPress. Plugins carga condicional

categoria-WordPress

Lazy load de Google reCAPTCHA en el formulario de comentarios de WordPress: 10/2021: https://desarrollowp.com/blog/tutoriales/lazy-load-de-google-recaptcha-en-el-formulario-de-comentarios-de-wordpress/

enlaces que revise en su día:

Magistral Fernando Puente en una WordCamp Zaragoza 01/2020 que nos explicó mucho del tema: https://wordpress.tv/2019/01/27/fernando-puente-taller-wpo-carga-condicional-de-plugins/

Cómo cargar correctamente los archivos JS y CSS en tu tema o plugin
OMGF | Host Google Fonts Locally – WordPress plugin | WordPress.org
Perfmatters v1.5.5 | GPL Vault
How to Disable Scripts on a Per Post/Page Basis (Script Manager)
WordPress performance optimization tips – perfmatters
Search — WordPress.org
Imagify – WebP & Image Compression and Optimization – Plugin WordPress | WordPress.org
Autoptimize generating error in GTMetrix: Error: Add Expires headers | WordPress.org
Add Expires Headers to External Scripts Using PHP

y algo que hice hay q mirar a ver q pone

<?php
/*
Plugin Name: Carga Condicional Plugins 201902
Plugin URI: https://www.onsat.es/
Description: Plugin para liberar de plugins en url concretas
Version: 1.0
Author: César - OnSAT
Author URI: https://www.onsat.es/
License: GPLv2 o posterior
*/
?>


<?php
//Ejemplo: no cargar en la home los plugins no necesarios - FP y César Frisa Pérez en OnSAT
//Condiciones por URL solicitada
if(!is_admin())
	add_filter( 'option_active_plugins', 'WCZGZ_option_active_plugins_URLHOME', 1);
function WCZGZ_option_active_plugins_URLHOME( $plugin_list ){
	$request_uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
	if ($request_uri === '/') {
		// unset( $plugin_list[array_search( 'mailchimp-for-woocommerce/mailchimp-woocommerce.php', $plugin_list)]);
		//para 1 elemento
		/*
		$termToSearch='duplicate-post'; 		
		unset (   $plugin_list[key (array_filter($plugin_list, function($var) use ($termToSearch) { return stristr($var, $termToSearch); }))] );
		//array para varios con foreach
		*/
		$termToSearch=array('duplicate-post','envato-market.php','updraftplus.php','woocommerce-gateway-paypal-express-checkout.php',
		'woocommerce.php','wordfence.php','wp-smush.php','wps-hide-login.php');
		foreach ($termToSearch as $element0) {
			unset (   $plugin_list[key (array_filter($plugin_list, function($var) use ($element0) { return stristr($var, $element0); }))] );
			//echo ' - unset de: '.$element0;
		}
	}
	return $plugin_list;
}

/*woocommerce: 
reparacion-impresoras-reparacion-fotocopiadoras-reparacion-plotter-reparacion-fax-reparacion-escaner


/*
//Uso: medir el impacto de una URL sin un plugin concreto (según el índice del listado de activos) - FP
//http://example.com/url-2-test/?sinplugins=1
if(!is_admin())
	add_filter( 'option_active_plugins', 'WCZGZ_option_active_plugins_parametros', 1);
function WCZGZ_option_active_plugins_parametros( $plugin_list ){
	if(isset($_GET['sinplugins'])){  //si no pongo este string la web sale normal--->OK
		$parametros = explode(",", $_GET['sinplugins']);
		var_dump($parametros);//$parametros = explode("%2C", $_GET['sinplugins']);
		
		foreach($parametros as $element){
			echo 'borro:'.$element[0].'<br />';
			unset( $plugin_list[$element[0]] );
			}
	}		
	return $plugin_list;
}
*/


/*
//Uso: medir el impacto de una URL sin ningún plugin activo - FP
//http://example.com/url-2-test/?sinplugins
if(!is_admin())
	add_filter( 'option_active_plugins', 'WCZGZ_option_active_plugins_sinplugins', 1);
function WCZGZ_option_active_plugins_sinplugins( $plugin_list ){
	
	if(isset($_GET['sinplugins']))
		return array();
	else
		return $plugin_list;
}
*/

/*
//Uso: mostrar la carga de WP hasta el MU-Plugin y listado de plugins activos en BD - FP
if(!is_admin()) 
	add_filter( 'option_active_plugins', 'WCZGZ_option_active_plugins_mostrar_lista_param', 1);
function WCZGZ_option_active_plugins_mostrar_lista_param( $plugin_list ){
	if(isset($_GET['muestra_plugins'])){
		echo '<pre>';
		print_r($plugin_list);		
		debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
		echo '</pre>';
		exit;				
	} else
		return $plugin_list;	
}
*/




/*
//Uso: mostrar la carga de WP hasta el MU-Plugin y listado de plugins activos en BD - FP
if(!is_admin()) 
	add_filter( 'option_active_plugins', 'WCZGZ_option_active_plugins_mostrar_lista', 1);
function WCZGZ_option_active_plugins_mostrar_lista( $plugin_list ){

	require (ABSPATH . WPINC . '/pluggable.php');
	if ( is_user_logged_in() ) {
		if (wp_get_current_user()->user_login=='onsat') {
			echo 'hola onsat';
		}
		echo '<pre>';
		print_r($plugin_list);		
		debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
		echo '</pre>';
		exit;
	}
}
*/
,

cesar
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.