Mejorar rendimiento WordPress

En este post iré haciendo una lista de tips para mejorar el rendimiento en general de WordPress.

Limitar el número de revisiones de los posts

Añade este código al archivo wp-config.php para limitar el número de revisiones máximo a guardar por cada post.

define( 'WP_POST_REVISIONS', 4 ); // Guarda un máximo de 4 revisiones
define('WP_POST_REVISIONS', false); // Deshabilita las revisiones

Si quieres eliminar las revisiones existentes, ejecuta la siguiente query en la base de datos (reemplaza «wp_» por el prefijo que corresponda).

DELETE FROM wp_posts WHERE post_type = "revision";

Deshabilitar el hotlinking

Evita que otros dominios enlacen recursos (imágenes, archivos PDF, etc…) alojados en tu web.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)tudominio.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteRule \.(gif|jpg|jpeg|bmp|zip|rar|mp3|flv|swf|xml|php|png|css|pdf)$ – [F]

Incrementar el límite de memoria de PHP

Si tienes mensajes del estilo a «Allowed memory size of xxxxxx bytes exhausted» necesitas aumentar el límite de memoria dedicado para tu web.

Añade esta línea al archivo wp-config.php.

define( 'WP_MEMORY_LIMIT', '256M' );

Precargar las DNS de recursos externos

Si sabes que vas a usar ciertos recursos externos, puedes precargar las DNS para optimizar la velocidad llegado el momento de cargarlos.

Estos son algunos ejemplos de recursos que puedes precargar. Añade el código entre las etiquetas <head></head>.

<link rel="dns-prefetch" href="//fonts.googleapis.com"> // Google Fonts
<link rel="dns-prefetch" href="//ajax.googleapis.com"> // jQuery
<link rel="dns-prefetch" href="//www.google-analytics.com"> // Google Analytics

Habilita la compresión Gzip o Brotli

Seguramente esto ya lo tengas habilitado en el servidor (revisa el CPanel).

Para apache también puedes habilitarlo en el archivo .htaccess con el siguiente código:

<ifmodule mod_deflate.c="">
	# Comprime HTML, JavaScript, CSS, Text, XML and fonts
	AddOutputFilterByType DEFLATE application/javascript
	AddOutputFilterByType DEFLATE application/rss+xml
	AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
	AddOutputFilterByType DEFLATE application/x-font
	AddOutputFilterByType DEFLATE application/x-font-opentype
	AddOutputFilterByType DEFLATE application/x-font-otf
	AddOutputFilterByType DEFLATE application/x-font-truetype
	AddOutputFilterByType DEFLATE application/x-font-ttf
	AddOutputFilterByType DEFLATE application/x-javascript
	AddOutputFilterByType DEFLATE application/xhtml+xml
	AddOutputFilterByType DEFLATE application/xml
	AddOutputFilterByType DEFLATE font/opentype
	AddOutputFilterByType DEFLATE font/otf
	AddOutputFilterByType DEFLATE font/ttf
	AddOutputFilterByType DEFLATE image/svg+xml
	AddOutputFilterByType DEFLATE image/x-icon
	AddOutputFilterByType DEFLATE text/css
	AddOutputFilterByType DEFLATE text/html
	AddOutputFilterByType DEFLATE text/javascript
	AddOutputFilterByType DEFLATE text/plain
	AddOutputFilterByType DEFLATE text/xml

	# Compatibilidad con navegadores antiguos
	BrowserMatch ^Mozilla/4 gzip-only-text/html
	BrowserMatch ^Mozilla/4\.0[678] no-gzip
	BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
	Header append Vary User-Agent
</ifmodule>

👇Tu comentario