Hola,
Estoy intentando evitar que cargue en todas las páginas siguiendo el paso número 2 del artículo https://www.webempresa.com/blog/evitar-carga-contact-form-7-en-todas-las-paginas.html ya que estoy utilizando un tema hijo.
Según entiendo en ese artículo utilizando el métido 2, he añadido esos códigos en el archivo functions.php y el archivo ha quedado de esta forma pero me da un error:
<?php
function homey_enqueue_styles() {
// enqueue parent styles
wp_enqueue_style('homey-parent-theme', get_template_directory_uri() .'/style.css');
// enqueue child styles
wp_enqueue_style('homey-child-theme', get_stylesheet_directory_uri() .'/style.css', array('homey-parent-theme'));
}
add_action('wp_enqueue_scripts', 'homey_enqueue_styles');
?>
add_filter( 'wpcf7_load_js', '__return_false' );
add_filter( 'wpcf7_load_css', '__return_false' );
function we_carga_contactform7(){
if ( is_page('contactar') ) {
if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
wpcf7_enqueue_scripts();
}
if ( function_exists( 'wpcf7_enqueue_styles' ) ) {
wpcf7_enqueue_styles();
}
}
}
add_action( 'wp_enqueue_scripts', 'we_carga_contactform7' );
El problema es que una vez añadido, en la parte superior de la web (desde wp admin) me aparece este error/código: ¿Cómo puedo subir un pantallazo al foro?
_return_false' ); add_filter( 'wpcf7_load_css', '__return_false' ); function we_carga_contactform7(){ if ( is_page('contactar') ) { if ( function_exists( 'wpcf7_enqueue_scripts' ) ) { wpcf7_enqueue_scripts(); } if ( function_exists( 'wpcf7_enqueue_styles' ) ) { wpcf7_enqueue_styles(); } } } add_action( 'wp_enqueue_scripts', 'we_carga_contactform7' );
Espero que alguien me pueda ayudar con esto.
Gracias
Contenido solo visible a usuarios registrados
Hola José Luis.
Elimina la llave de cierre que tienes antes de los códigos de contact form " ?> "
El código completo sería este:
<?php
function homey_enqueue_styles() {
// enqueue parent styles
wp_enqueue_style('homey-parent-theme', get_template_directory_uri() .'/style.css');
// enqueue child styles
wp_enqueue_style('homey-child-theme', get_stylesheet_directory_uri() .'/style.css', array('homey-parent-theme'));
}
add_action('wp_enqueue_scripts', 'homey_enqueue_styles');
// Desactivar contact form y activarlo solo en las páginas del formulario
add_filter( 'wpcf7_load_js', '__return_false' );
add_filter( 'wpcf7_load_css', '__return_false' );
function we_carga_contactform7(){
if ( is_page('contactar') ) {
if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
wpcf7_enqueue_scripts();
}
if ( function_exists( 'wpcf7_enqueue_styles' ) ) {
wpcf7_enqueue_styles();
}
}
}
add_action( 'wp_enqueue_scripts', 'we_carga_contactform7' );
¿Cómo puedo subir un pantallazo al foro?
Puedes subir las imágenes seleccionando la opción " Adjuntar archivos " o simplemente arrastrando el archivo al cuerpo de la consulta.
Un saludo
Muchas gracias Pepe.
Ahora el mensaje de error que te comentaba ya no aparece, pero si entro en mi Wepanel, WPcenter, optimización, me sigue apareciendo el mensaje:
Entiendo que no debería aparecer ese mensaje, ¿verdad?
Gracias
Por cierto Pepe, la llave de cierre que hemos quitado, ¿no debería ponerse al final del código? ¿O ya no hace falta llave de cierre?
Gracias
Hola Jose luis.
pero si entro en mi Wepanel, WPcenter, optimización, me sigue apareciendo el mensaje:
La opción de optimización de WPCenter no comprueba los códigos solo muestra recomendaciones, en este caso ve que tienes Contact Form instalado y muestra la recomendación, no te preocupes si ya esta añadido no tienes que hacer nada más.
la llave de cierre que hemos quitado, ¿no debería ponerse al final del código? ¿O ya no hace falta llave de cierre?
No hace falta, la llave de cierre de PHP es por si queremos añadir otro código que no sea PHP, por ejemplo HTML, entonces sí que tendríamos que abrir y cerrar la llave pero como todos los códigos son PHP no hace falta que lo cierres, por eso el problema que tenias antes al tener cerrado el bloque de PHP el siguiente código que añadiste no lo detectaba como PHP y mostraba un error.
Un Saludo
Muchas gracias por tus aclaraciones.
¿Habría alguna forma de saber si realmente está funcionando bien el código de CF7 que hemos añadido y que no está cargando en las páginas donde no tengo el formulario?
Gracias
Hola Jose luis.
Puedes revisarlo desde la consola del navegador, puedes ver el código que genera, en la página de contacto podrás ver que carga el JS de Contact form " contact-form-7-js " mientras que en las demás páginas ese JS no carga.
Tienes la web en mantenimiento, si abres la web lo podemos comprobar.
Un saludo
Hola Pepe, pues te agradecería muchísimo que lo pudieras comprobar. Ya quité el mantenimiento. 🙂
Ya me dirás.
Gracias
Olvidé decirte que el único formulario que tengo a día de hoy está aquí https://caraving.com/contactar
Gracias
Hola Jose luis.
Si realizamos una búsqueda en la página de contacto vemos que esta cargando el JS:
En cambio si lo buscamos en la página de inicio vemos que no carga nada:
Está funcionado 😉
Un Saludo
Hola Jose Luis.
Nada, gracias a ti 😀
Cualquier consulta que tengas no dudes en comunicarlo.
Un Saludo