Consejos para aumentar la velocidad de wordpress

Consejos para aumentar la velocidad de mi wordpress

Share on facebook
Share on google
Share on twitter
Share on linkedin

Son varias las acciones que pueden llevarse a cabo para mejorar la velocidad de tu web. A continuación mostramos las que a nosotros nos han servido en algún momento, ya que no siempre dan resultado

Hay que advertir que no siempre funcionan o dan resultado. Son muchos los motivos: hosting, versiones utilizadas, themes, plugins, etc.

Tampoco se trata de una lista completa, sino de una relación de acciones que usamos frecuentemente o nos han sido útiles en algún momento determinado.

Defer Parsing Javascript

O cómo aplazar la carga de JavaScript. Es una pequeña función que fuerza la carga de JavaScripts cuando ya se ha cargado el contenido. Para utilizarlo, pegamos el siguiente código en nuestro functions.php

// Aplazar JavaScripts
// Aplaza la carga de jQuery usando la propiedad HTML5 defer
if (!(is_admin() )) {
    function defer_parsing_of_js ( $url ) {
        if ( FALSE === strpos( $url, '.js' ) ) return $url;
        if ( strpos( $url, 'jquery.js' ) ) return $url;
        // return "$url' defer ";
        return "$url' defer onload='";
    }
    add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );
}

El código anterior nos funciona, pero también hemos visto/probado otros:

function defer_parsing_of_js ( $url ) {
if ( FALSE === strpos( $url, '.js' ) ) return $url;
if ( strpos( $url, 'jquery.js' ) ) return $url;
return "$url.' async onload='myinit()";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );

 

function defer_parsing_of_js ( $url ) {
if ( FALSE === strpos( $url, '.js' ) ) return $url;
if ( strpos( $url, 'jquery.js' ) ) return $url;
return "$url' defer ";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );

Plugins que realizan esta acción:

  • BJ Lazy Load
  • WP Defer Loading

Remove Version Query Strings From JavaScript JS and CSS Stylesheet Files

En el fichero fuctions.php

 function _remove_script_version( $src ){
 $parts = explode( '?', $src );
 return $parts[0];
 }
 add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
 add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

Una variante es la siguiente:

function remove_cssjs_ver( $src ) {
 if( strpos( $src, '?ver=' ) )
 $src = remove_query_arg( 'ver', $src );
 return $src;
}
add_filter( 'style_loader_src', 'remove_cssjs_ver', 10, 2 );
add_filter( 'script_loader_src', 'remove_cssjs_ver', 10, 2 );

Plugins que realizan esta acción:

  • Remove Query String From CSS & Javascript In WordPress

Habilitar la compresión Gzip

En el fichero .htaccess incluimos lo siguiente:

# BEGIN GZIP
<IFModule mod_deflate.c>
<filesmatch "\.(js|css|html|jpg|png|php)$">
SetOutputFilter DEFLATE
</filesmatch>
</IFModule>
# END GZIP

Otras variantes son:

# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>
# END GZIP
# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
</ifmodule>
# END GZIP

 

Eliminar el JavaScript que bloquea la visualización del contenido de la mitad superior de la página

Plugins que realizan esta acción:

  • Async Javascript

 

Eliminar el CSS que bloquea la visualización del contenido de la mitad superior de la página

Plugins que realizan esta acción:

  • Better WordPress Minify

Especificar caché de navegador

En el fichero .htaccess incluimos lo siguiente:

# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 5 seconds"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType application/pdf "access plus 1 year"
ExpiresByType application/x-shockwave-flash "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers

También:

# BEGIN Expire headers
<IfModule mod_expires.c>
<filesmatch "\.(jpg|JPG|gif|GIF|png|PNG|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 30 day"
</filesmatch>
</IfModule>
# END Expire headers

Keep Alive

En el fichero .htaccess incluimos lo siguiente:

<IfModule mod_headers.c>
Header set Connection keep-alive
</IfModule>
Share on facebook
Share on google
Share on twitter
Share on linkedin

Deja un comentario