ART PROJECT GROUP:
C/ Álvaro Mutis, 1. 4º G. C.P: 29651. Mijas. Málaga. España.
Teléfono: +34 665 058 218.

¿Cómo validar correctamente los formularios de contacto de Jetpack by WordPress.com?

  • Jetpack by WordPress.com

¿Cómo validar correctamente los formularios de contacto de Jetpack by WordPress.com?

Continuando con la senda emprendida ayer en la entrada ¿Cómo validar correctamente los comentarios de Jetpack by WordPress.com?, seguimos validando el HTML5 del código fuente del sitio web de APG con el validador oficial de la W3C, y comprobando que cumple con los estándares oficiales marcados por la W3C.

En esta ocasión nos hemos encontrado con un problema de validación que generan los formularios de contacto que el plugin para WordPress Jetpack by WordPress.com inserta en nuestras páginas y entradas.

¿El problema?

El problema lo genera la hoja de estilo que acompaña a los formularios, concretamente el archivo grunion.css, al ser insertada al final del cuerpo (body) de nuestro código HTML5 en lugar de en su lugar natural, la cabecera (head).

Solución

La solución a este problema consiste en añadir en el archivo functions.php de nuestro tema principal o de nuestro tema hijo la siguiente función:

//Elimina el estilo de los formularios de Jetpack
function apg_formularios_jetpack() {
    wp_deregister_style('grunion.css');
}
add_action( 'wp_print_styles', 'apg_formularios_jetpack', 100 );

Y en añadir en el archivo header.php de nuestro tema principal o de nuestro tema hijo el siguiente código PHP:

<?php if ( has_shortcode( $post->post_content, 'contact-form' ) ) echo '<link rel="stylesheet" id="grunion-css" href="/wp-content/plugins/jetpack/modules/contact-form/css/grunion.css" type="text/css" media="all" />' . PHP_EOL; ?>

Explicación

Primero eliminamos la inserción de la hoja de estilo, para, posteriormente, añadirla en la cabecera (head) de nuestro código HTML, eso si, sólo en el caso de que exista al menos un formulario de contacto en la página o entrada. Para poder saber si necesitamos insertar la hoja de estilo o no, utilizamos la función has_shortcode de WordPress y comprobamos que se ha llamado al shortcode contact-form en el contenido de la página o entrada, lo que significará que se ha insertado, al menos, un formulario de contacto.

Esperamos que de nuevo os resulte útil y funcional este pequeño hack.

Quedamos a la espera de vuestros aportes, opiniones y comentarios.

2017-03-27T18:09:04+00:00 lunes, 11 de agosto de 2014|Categorías: Art Project Group|Etiquetas: , , , , , , , , |Sin comentarios

Deje un comentario

Comparte esto con un amigo