SlideShare una empresa de Scribd logo
Taller WPO

Carga condicional de plugins
Fernando Puente
@fpuenteonline
BIO
@fpuenteonline - Informático de vocación y de profesión, formador
ocasional y beginner de comer y beber.

Desde 1996 trabajando en TI, los últimos 12 en medios de
comunicación online y comercio electrónico

•  Consultor Enterprise en SiteGround
•  Consultor Desarrollo de Negocio en YITH
•  CTO de Exprime Viajes y Dormir de Chollo
•  Formador en Fundación COPE
•  Consultor freelance especializado en performance
WPO y WordPress
La carga condicional
Recordatorio
WPO no es velocidad
Estrategia para reducir…
•  El tiempo de respuesta al navegador: menor TTFB
•  La carga innecesaria de código: mejor rendimiento del servidor
•  El número de recursos necesarios por la página: carga total de
página más rápida
La magia, crearla antes de la carga de plugins, en un MU-plugin:
add_filter( 'option_active_plugins', callable $function_to_add, 1);
Notas finales
•  Técnica MUY peligrosa, necesario conocer en detalle el sitio y el
funcionamiento de los plugins objetivo y del tema activo
•  Crear condiciones programáticas para cada caso concreto que
deseemos controlar
•  A medida de cada proyecto web, no existe un estándar
¡Vamos al taller!
Esquema de trabajo
Creación de un MU Plugin para la gestión de la carga condicional
de los plugins activos en el sitio:
•  Sobre la instalación de WordPress, crear si no existe el
directorio wp-content/mu-plugins
•  Crear un fichero php, fichero de nuestro plugin, sobre ese
directorio para ser ejecutado antes de los plugins activos
•  Los plugins MU (must-use) se ejecutan alfabéticamente, por lo
que se recomienda utilizar un nombre de fichero adecuado 
El objetivo es “engañar” a WordPress para que cargue menos
plugins de los que realmente están activos en el sitio
Ejemplos y usos
<?php	
//Uso:	mostrar	la	carga	de	WP	hasta	el	MU-Plugin	y	listado	de	plugins	activos	en	BD	
	
add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				print_r($plugin_list);	
				debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);	
				exit;	
}
<?php	
//Ejemplo:	no	cargar	el	plugin	AMP	(sin	condición)	
	
add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
	
				unset(	$plugin_list[array_search(	'amp/amp.php',	$plugin_list)]);	
				return	$plugin_list;	
}
<?php	
//Uso:	cómo	habilitar	el	filtro	sólo	para	el	front-end	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				print_r($plugin_list);	
				debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);	
				exit;	
}
<?php	
//Uso:	medir	el	impacto	de	una	URL	sin	ningún	plugin	activo	
//http://example.com/url-2-test/?sinplugins	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				if(isset($_GET['sinplugins']))	
								return	array();	
				else	
								return	$plugin_list;	
}
<?php	
//Uso:	medir	el	impacto	de	una	URL	sin	un	plugin	concreto	(según	el	índice	del	listado	de	activos)	
//http://example.com/url-2-test/?sinplugins=1	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				if(isset($_GET['sinplugins']))	
	unset(	$plugin_list[$_GET['sinplugins']]	);	
				return	$plugin_list;	
}
<?php	
//ERROR:	no	podemos	utilizar	condiciones	is_single()	o	similares	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				if(!is_single())	
								unset(	$plugin_list[array_search(	'amp/amp.php',	$plugin_list)]);	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	no	cargar	en	la	home	los	plugins	no	necesarios	
//Condiciones	por	URL	solicitada	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$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)]);	
								unset(	$plugin_list[array_search(	'woo-gutenberg-products-block/woocommerce-gutenberg-
products-block.php',	$plugin_list)]);	
								unset(	$plugin_list[array_search(	'woocommerce-gateway-paypal-express-checkout/woocommerce-
gateway-paypal-express-checkout.php',	$plugin_list)]);	
								unset(	$plugin_list[array_search(	'woocommerce-gateway-stripe/woocommerce-gateway-
stripe.php',	$plugin_list)]);	
								unset(	$plugin_list[array_search(	'woocommerce/woocommerce.php',	$plugin_list)]);	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	no	cargar	en	el	front-end	los	plugins	que	son	sólo	de	uso	en	el	back-end	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
	
				unset(	$plugin_list[array_search(	'broken-link-checker/broken-link-checker.php',	
$plugin_list)]);	
				unset(	$plugin_list[array_search(	'classic-editor/classic-editor.php',	$plugin_list)]);	
				unset(	$plugin_list[array_search(	'duplicate-post/duplicate-post.php',	$plugin_list)]);	
				unset(	$plugin_list[array_search(	'updraftplus/updraftplus.php',	$plugin_list)]);	
				unset(	$plugin_list[array_search(	'wp-smushit/wp-smush.php',	$plugin_list)]);	
	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	del	plugin	CF7	sólo	para	una	URL	concreta	
//ERROR:	el	plugin	usa	otra	URL	para	enviar	los	datos	del	formulario	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
$request_uri	=	parse_url($_SERVER['REQUEST_URI'],	PHP_URL_PATH);	
				if	($request_uri	!=	'/contacto/')	
				{	
								unset(	$plugin_list[array_search(	'contact-form-7/wp-contact-form-7.php',	$plugin_list)]);	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	del	plugin	CF7	sólo	para	una	URL	concreta	
//CORREGIDO:	incluidas	las	URL	necesarias	para	el	plugin	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				$request_uri	=	parse_url($_SERVER['REQUEST_URI'],	PHP_URL_PATH);	
				$is_cf7_needed	=	($request_uri	===	'/contacto/'	||	strpos(	$request_uri,	'/wp-json/contact-
form-7/v1/contact-forms/')	!==	false);	
				if	(!$is_cf7_needed)	
				{	
								unset(	$plugin_list[array_search(	'contact-form-7/wp-contact-form-7.php',	$plugin_list)]);	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	de	plugins	por	entorno	de	ejecución	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				if(	$_SERVER['HTTP_HOST']	===	'localhost'	)	
				{	
								$plugins_to_disable	=	array(	
																				'updraftplus/updraftplus.php',	
												 	 	'wordpress-seo/wp-seo.php',	
												 	 	'wp-smushit/wp-smush.php',	
																												'wps-hide-login/wps-hide-login.php');	
								$plugin_list	=	array_diff(	$plugin_list,	$plugins_to_disable	);	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	de	plugin	para	usuarios	conectados	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				require	(ABSPATH	.	WPINC	.	'/pluggable.php');	
				if	(	is_user_logged_in()	)	
				{	
								unset(	$plugin_list[array_search(	'cookie-law-info/cookie-law-info.php',	$plugin_list)]);	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	de	plugins	cuando	se	ejecuta	wp-cron	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				$request_uri	=	parse_url($_SERVER['REQUEST_URI'],	PHP_URL_PATH);	
				if	($request_uri	===	'/wp-cron.php'	)	
				{	
								$plugins_to_disable	=	array(	
	 													'advanced-custom-fields/acf.php',	
												 	 	'classic-editor/classic-editor.php',	
	 	 	'duplicate-post/duplicate-post.php',	
																					'wps-hide-login/wps-hide-login.php');	
								$plugin_list	=	array_diff(	$plugin_list,	$plugins_to_disable	);	
}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	de	plugin	por	horas	cuando	se	ejecuta	wp-cron	
	
if(!is_admin())	
				add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				$request_uri	=	parse_url($_SERVER['REQUEST_URI'],	PHP_URL_PATH);	
				if	($request_uri	===	'/wp-cron.php'	)	
				{	
								//Habilitar	Broken	link	checker	sólo	por	la	noche	
								if(current_time('H')	>=	7	&&	current_time('H')	<=23	)	
												unset(	$plugin_list[array_search(	'broken-link-checker/broken-link-checker.php',	
$plugin_list)]);	
				}	
				return	$plugin_list;	
}
<?php	
//Uso:	mejorar	la	carga	de	las	llamadas	AJAX	en	back-end	
	
add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				if	(	wp_doing_ajax()	)	
				{	
								if($_POST['action']	===	'blc_work'	||	$_GET['action']	===	'blc_dashboard_status')	
												return	array('broken-link-checker/broken-link-checker.php');	
								if($_POST['action']	===	'gadwp_backend_item_reports')	
												return	array('google-analytics-dashboard-for-wp/gadwp.php');	
								if($_POST['action']	===	'sucuriscan_ajax')	
												return	array('sucuri-scanner/sucuri.php');	
								if($_POST['action']	===	'heartbeat')	
												return	array();	
				}	
				return	$plugin_list;	
}
<?php	
//Ejemplo:	carga	condicional	del	plugin	AMP	para	un	sitio	concreto	dentro	de	una	instalación	
multisite	
	
add_filter(	'option_active_plugins',	'WCZGZ_option_active_plugins',	1);	
add_filter(	'site_option_active_sitewide_plugins',	'WCZGZ_option_active_plugins',	1);	
	
function	WCZGZ_option_active_plugins(	$plugin_list	){	
				global	$current_blog;	
	
				if(	$current_blog->blog_id	==	2	)	{	
								unset(	$plugin_list[array_search(	'amp/amp.php',	$plugin_list)]);	
				}	
				return	$plugin_list;	
}
Ya conoces la estrategia de
carga condicional para WPO,
¡creatividad al poder!
"Let's be careful out there“
Fernando Puente
@fpuenteonline
Muchas gracias

Más contenido relacionado

Similar a Taller WPO - Carga condicional de plugins

Lock in, como alma que lleva el diablo-semanawp2018
Lock in, como alma que lleva el diablo-semanawp2018Lock in, como alma que lleva el diablo-semanawp2018
Lock in, como alma que lleva el diablo-semanawp2018
JuanKa Díaz - jdevelopia
 
Básicos para medir tu web - Taller de iniciación
Básicos para medir tu web - Taller de iniciaciónBásicos para medir tu web - Taller de iniciación
Básicos para medir tu web - Taller de iniciación
Fernando Puente
 
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
JuanKa Díaz - jdevelopia
 
¿Tu empresa necesita una plataforma de tecnología personalizada?
¿Tu empresa necesita una plataforma de tecnología personalizada?¿Tu empresa necesita una plataforma de tecnología personalizada?
¿Tu empresa necesita una plataforma de tecnología personalizada?
Ivan Bedia García
 
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
Fernando Puente
 
De Cero a Wordpress
De Cero a WordpressDe Cero a Wordpress
De Cero a Wordpress
Alberto Luengo Cabanillas
 
Optimiza tus webs a bajo costo - WCVenezuela2021
Optimiza tus webs a bajo costo - WCVenezuela2021Optimiza tus webs a bajo costo - WCVenezuela2021
Optimiza tus webs a bajo costo - WCVenezuela2021
Fernando Puente
 
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
Fernando Serer
 
Desarrollo web el mejor aliado del Marketing Digital
Desarrollo web el mejor aliado del Marketing DigitalDesarrollo web el mejor aliado del Marketing Digital
Desarrollo web el mejor aliado del Marketing Digital
Marta Soler
 
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
Fernando Puente
 
Seminario De Informatica julio_agosto_septiembre 2009
Seminario De Informatica julio_agosto_septiembre 2009Seminario De Informatica julio_agosto_septiembre 2009
Seminario De Informatica julio_agosto_septiembre 2009
guest7150f38
 
Primeros pasos con WPO: aprende a analizar tu web - Taller
Primeros pasos con WPO: aprende a analizar tu web - TallerPrimeros pasos con WPO: aprende a analizar tu web - Taller
Primeros pasos con WPO: aprende a analizar tu web - Taller
Fernando Puente
 
Antonio Torres - WPO Wordpress - EN@E Digital Meeting
Antonio Torres - WPO Wordpress - EN@E Digital MeetingAntonio Torres - WPO Wordpress - EN@E Digital Meeting
Antonio Torres - WPO Wordpress - EN@E Digital Meeting
ENAE Business School
 
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
Centro Guadalinfo Grupo Aljarafe
 
SEO Low Cost para pequeñas empresas
SEO Low Cost para pequeñas empresasSEO Low Cost para pequeñas empresas
SEO Low Cost para pequeñas empresas
Animoo
 
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
Oscar Rodriguez
 
Webinar Flumotion - How to integrate online video into your marketing strategy
Webinar Flumotion - How to integrate online video into your marketing strategyWebinar Flumotion - How to integrate online video into your marketing strategy
Webinar Flumotion - How to integrate online video into your marketing strategy
Flumotion
 
Mejorar WPO en WordPress
Mejorar WPO en WordPressMejorar WPO en WordPress
Mejorar WPO en WordPress
Antonio Torres
 
Pilares WPO - Fundamentos y estrategias - Fabuloso Madrid
Pilares WPO - Fundamentos y estrategias - Fabuloso MadridPilares WPO - Fundamentos y estrategias - Fabuloso Madrid
Pilares WPO - Fundamentos y estrategias - Fabuloso Madrid
Fernando Puente
 
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
SiteGround España
 

Similar a Taller WPO - Carga condicional de plugins (20)

Lock in, como alma que lleva el diablo-semanawp2018
Lock in, como alma que lleva el diablo-semanawp2018Lock in, como alma que lleva el diablo-semanawp2018
Lock in, como alma que lleva el diablo-semanawp2018
 
Básicos para medir tu web - Taller de iniciación
Básicos para medir tu web - Taller de iniciaciónBásicos para medir tu web - Taller de iniciación
Básicos para medir tu web - Taller de iniciación
 
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
Lock in, como alma que lleva el diablo-word camp-las-palmas-2018-16-9
 
¿Tu empresa necesita una plataforma de tecnología personalizada?
¿Tu empresa necesita una plataforma de tecnología personalizada?¿Tu empresa necesita una plataforma de tecnología personalizada?
¿Tu empresa necesita una plataforma de tecnología personalizada?
 
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
El editor clásico como ejemplo de deuda tecnológica - WordCamp Granada 2019
 
De Cero a Wordpress
De Cero a WordpressDe Cero a Wordpress
De Cero a Wordpress
 
Optimiza tus webs a bajo costo - WCVenezuela2021
Optimiza tus webs a bajo costo - WCVenezuela2021Optimiza tus webs a bajo costo - WCVenezuela2021
Optimiza tus webs a bajo costo - WCVenezuela2021
 
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
Optimización WPO WordPress - Meetup WP Valencia - 26/09/2015
 
Desarrollo web el mejor aliado del Marketing Digital
Desarrollo web el mejor aliado del Marketing DigitalDesarrollo web el mejor aliado del Marketing Digital
Desarrollo web el mejor aliado del Marketing Digital
 
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
Tu posicionamiento mejora con la velocidad de tu web ¡WPO para todos!
 
Seminario De Informatica julio_agosto_septiembre 2009
Seminario De Informatica julio_agosto_septiembre 2009Seminario De Informatica julio_agosto_septiembre 2009
Seminario De Informatica julio_agosto_septiembre 2009
 
Primeros pasos con WPO: aprende a analizar tu web - Taller
Primeros pasos con WPO: aprende a analizar tu web - TallerPrimeros pasos con WPO: aprende a analizar tu web - Taller
Primeros pasos con WPO: aprende a analizar tu web - Taller
 
Antonio Torres - WPO Wordpress - EN@E Digital Meeting
Antonio Torres - WPO Wordpress - EN@E Digital MeetingAntonio Torres - WPO Wordpress - EN@E Digital Meeting
Antonio Torres - WPO Wordpress - EN@E Digital Meeting
 
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
Mi web como eje principal de mi estrategia digital (Sanlucar la Mayor)
 
SEO Low Cost para pequeñas empresas
SEO Low Cost para pequeñas empresasSEO Low Cost para pequeñas empresas
SEO Low Cost para pequeñas empresas
 
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
SEO y Analítica web con Wordpress (Meetup Wordpress Tarragona)
 
Webinar Flumotion - How to integrate online video into your marketing strategy
Webinar Flumotion - How to integrate online video into your marketing strategyWebinar Flumotion - How to integrate online video into your marketing strategy
Webinar Flumotion - How to integrate online video into your marketing strategy
 
Mejorar WPO en WordPress
Mejorar WPO en WordPressMejorar WPO en WordPress
Mejorar WPO en WordPress
 
Pilares WPO - Fundamentos y estrategias - Fabuloso Madrid
Pilares WPO - Fundamentos y estrategias - Fabuloso MadridPilares WPO - Fundamentos y estrategias - Fabuloso Madrid
Pilares WPO - Fundamentos y estrategias - Fabuloso Madrid
 
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
Fernando Puente: "Pilares WPO. Fundamentos y Estrategias"
 

Más de Fernando Puente

¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
Fernando Puente
 
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
Fernando Puente
 
WordPress. Modelos de negocio
WordPress. Modelos de negocioWordPress. Modelos de negocio
WordPress. Modelos de negocio
Fernando Puente
 
WordPress y cómo llegar al 50% de Internet
WordPress y cómo llegar al 50% de InternetWordPress y cómo llegar al 50% de Internet
WordPress y cómo llegar al 50% de Internet
Fernando Puente
 
Mitos y realidades sobre el WPO en WordPress
Mitos y realidades sobre el WPO en WordPressMitos y realidades sobre el WPO en WordPress
Mitos y realidades sobre el WPO en WordPress
Fernando Puente
 
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPressHTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
Fernando Puente
 
Tipologías de migración - WordCamp Valencia 2019
Tipologías de migración - WordCamp Valencia 2019Tipologías de migración - WordCamp Valencia 2019
Tipologías de migración - WordCamp Valencia 2019
Fernando Puente
 
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
Fernando Puente
 
La analítica nos hace mejores
La analítica nos hace mejoresLa analítica nos hace mejores
La analítica nos hace mejores
Fernando Puente
 
Retos de WordPress para llegar al 50% de Internet
Retos de WordPress para llegar al 50% de Internet Retos de WordPress para llegar al 50% de Internet
Retos de WordPress para llegar al 50% de Internet
Fernando Puente
 
WP-Cron: ni contigo, ni sin ti
WP-Cron: ni contigo, ni sin tiWP-Cron: ni contigo, ni sin ti
WP-Cron: ni contigo, ni sin ti
Fernando Puente
 
Extender la funcionalidad de WordPress
Extender la funcionalidad de WordPressExtender la funcionalidad de WordPress
Extender la funcionalidad de WordPress
Fernando Puente
 
Niveles de escalado para WordPress
Niveles de escalado para WordPressNiveles de escalado para WordPress
Niveles de escalado para WordPress
Fernando Puente
 
WordPress - Oportunidades laborales
WordPress - Oportunidades laboralesWordPress - Oportunidades laborales
WordPress - Oportunidades laborales
Fernando Puente
 
Caché y WordPress
Caché y WordPressCaché y WordPress
Caché y WordPress
Fernando Puente
 
Técnicas para monetizar un sitio WordPress
Técnicas para monetizar un sitio WordPressTécnicas para monetizar un sitio WordPress
Técnicas para monetizar un sitio WordPress
Fernando Puente
 
Gutenberg, ¿la revolución de WordPress?
Gutenberg, ¿la revolución de WordPress?Gutenberg, ¿la revolución de WordPress?
Gutenberg, ¿la revolución de WordPress?
Fernando Puente
 
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
Fernando Puente
 
Gutenberg revoluciona WordPress - Congreso Web 2018
Gutenberg revoluciona WordPress - Congreso Web 2018Gutenberg revoluciona WordPress - Congreso Web 2018
Gutenberg revoluciona WordPress - Congreso Web 2018
Fernando Puente
 
Freelance WordPress: cómo tener éxito profesional
Freelance WordPress: cómo tener éxito profesionalFreelance WordPress: cómo tener éxito profesional
Freelance WordPress: cómo tener éxito profesional
Fernando Puente
 

Más de Fernando Puente (20)

¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
¿Te preocupa el rendimiento de tu web? No deberías estar haciendo esto…
 
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
Protege a tu rey. Defiende tu contenido de amenazas, scraping, IA o malos act...
 
WordPress. Modelos de negocio
WordPress. Modelos de negocioWordPress. Modelos de negocio
WordPress. Modelos de negocio
 
WordPress y cómo llegar al 50% de Internet
WordPress y cómo llegar al 50% de InternetWordPress y cómo llegar al 50% de Internet
WordPress y cómo llegar al 50% de Internet
 
Mitos y realidades sobre el WPO en WordPress
Mitos y realidades sobre el WPO en WordPressMitos y realidades sobre el WPO en WordPress
Mitos y realidades sobre el WPO en WordPress
 
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPressHTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
HTTP/3, PHP 7.4 y otras novedades en WPO para WordPress
 
Tipologías de migración - WordCamp Valencia 2019
Tipologías de migración - WordCamp Valencia 2019Tipologías de migración - WordCamp Valencia 2019
Tipologías de migración - WordCamp Valencia 2019
 
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
WordPress de la A a la Z. Guía de todos los términos que debes conocer y que ...
 
La analítica nos hace mejores
La analítica nos hace mejoresLa analítica nos hace mejores
La analítica nos hace mejores
 
Retos de WordPress para llegar al 50% de Internet
Retos de WordPress para llegar al 50% de Internet Retos de WordPress para llegar al 50% de Internet
Retos de WordPress para llegar al 50% de Internet
 
WP-Cron: ni contigo, ni sin ti
WP-Cron: ni contigo, ni sin tiWP-Cron: ni contigo, ni sin ti
WP-Cron: ni contigo, ni sin ti
 
Extender la funcionalidad de WordPress
Extender la funcionalidad de WordPressExtender la funcionalidad de WordPress
Extender la funcionalidad de WordPress
 
Niveles de escalado para WordPress
Niveles de escalado para WordPressNiveles de escalado para WordPress
Niveles de escalado para WordPress
 
WordPress - Oportunidades laborales
WordPress - Oportunidades laboralesWordPress - Oportunidades laborales
WordPress - Oportunidades laborales
 
Caché y WordPress
Caché y WordPressCaché y WordPress
Caché y WordPress
 
Técnicas para monetizar un sitio WordPress
Técnicas para monetizar un sitio WordPressTécnicas para monetizar un sitio WordPress
Técnicas para monetizar un sitio WordPress
 
Gutenberg, ¿la revolución de WordPress?
Gutenberg, ¿la revolución de WordPress?Gutenberg, ¿la revolución de WordPress?
Gutenberg, ¿la revolución de WordPress?
 
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
Adapta tu tema a Gutenberg - WordCamp Sevilla 2018
 
Gutenberg revoluciona WordPress - Congreso Web 2018
Gutenberg revoluciona WordPress - Congreso Web 2018Gutenberg revoluciona WordPress - Congreso Web 2018
Gutenberg revoluciona WordPress - Congreso Web 2018
 
Freelance WordPress: cómo tener éxito profesional
Freelance WordPress: cómo tener éxito profesionalFreelance WordPress: cómo tener éxito profesional
Freelance WordPress: cómo tener éxito profesional
 

Último

FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIOFISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
DarwinNestorArapaQui
 
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASAEXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
Javier Lasa
 
Presentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivoPresentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivo
juanlemus11122
 
EduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptxEduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptx
Elizabeth Mejia
 
WordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPressWordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPress
Fernando Tellado
 
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA IINSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
CESAR MIJAEL ESPINOZA SALAZAR
 
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.docSistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
LuisEnriqueCarboneDe
 
fase 4-Estudio de la geometria analitica[1].pptx
fase 4-Estudio de la geometria analitica[1].pptxfase 4-Estudio de la geometria analitica[1].pptx
fase 4-Estudio de la geometria analitica[1].pptx
QuerubinOlayamedina
 
Los derechos de autor y Ética Profesional
Los derechos de autor y Ética ProfesionalLos derechos de autor y Ética Profesional
Los derechos de autor y Ética Profesional
bgonzalezm20
 

Último (9)

FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIOFISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
 
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASAEXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
 
Presentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivoPresentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivo
 
EduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptxEduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptx
 
WordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPressWordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPress
 
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA IINSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
INSTITUTO AUCARA SEMANA NUMERO 7 AGROPECUARIA I
 
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.docSistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
 
fase 4-Estudio de la geometria analitica[1].pptx
fase 4-Estudio de la geometria analitica[1].pptxfase 4-Estudio de la geometria analitica[1].pptx
fase 4-Estudio de la geometria analitica[1].pptx
 
Los derechos de autor y Ética Profesional
Los derechos de autor y Ética ProfesionalLos derechos de autor y Ética Profesional
Los derechos de autor y Ética Profesional
 

Taller WPO - Carga condicional de plugins