Avisos
Vaciar todo

[Resuelto] creación de un childtheme  

 
Ricardo
 Ricardo
Usuario experto

Hola compañeros,

Por favor, me gustaría añadir un par de funcionalidades a mi web a través de un child theme y siguiendo un tutorial externo no me ha funcionado. Al activar se ha caído el servidor. Al volver al functions.php original he recuperado el funcionamiento normal de la web.

Quisiera saber cómo tengo que proceder para añadir la funcionalidad siguiente a los formularios de divi. 

1) Envío copia al destinatario (suscriptor)

<?php
// Exit if accessed directly
if ( !defined( 'ABSPATH' ) ) exit;

// BEGIN ENQUEUE PARENT ACTION
// AUTO GENERATED - Do not modify or remove comment markers above or below:

if ( !function_exists( 'chld_thm_cfg_locale_css' ) ):
function chld_thm_cfg_locale_css( $uri ){
if ( empty( $uri ) && is_rtl() && file_exists( get_template_directory() . '/rtl.css' ) )
$uri = get_template_directory_uri() . '/rtl.css';
return $uri;
}
endif;
add_filter( 'locale_stylesheet_uri', 'chld_thm_cfg_locale_css' );

if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
function chld_thm_cfg_parent_css() {
wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array( ) );
}
endif;
add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );

/* Enviar copia de formularios Divi al remitente */

add_filter( 'et_contact_page_headers', 'copia_formulario_divi_remitente', 10, 3 );

function copia_formulario_divi_remitente( $headers, $contact_name, $contact_email ) {

$headers[] = 'Cc: ' . $contact_email;

return $headers;

}

// END ENQUEUE PARENT ACTION

 

2) Cambio de la direcciónn del correo de envío+

Había leído que con esto lo podía conseguir

add_filter('wp_mail_from', 'new_mail_from');
add_filter('wp_mail_from_name', 'new_mail_from_name');

function new_mail_from($old) {
return 'correo@tudominio.com';
}
function new_mail_from_name($old) {
return 'correo de tu web';
}

Adjunto el post donde lo encontré.

image

 

Y esto es lo qeu finalmente escribí:

<?php
// Exit if accessed directly
if ( !defined( 'ABSPATH' ) ) exit;

// BEGIN ENQUEUE PARENT ACTION
// AUTO GENERATED - Do not modify or remove comment markers above or below:

if ( !function_exists( 'chld_thm_cfg_locale_css' ) ):
function chld_thm_cfg_locale_css( $uri ){
if ( empty( $uri ) && is_rtl() && file_exists( get_template_directory() . '/rtl.css' ) )
$uri = get_template_directory_uri() . '/rtl.css';
return $uri;
}
endif;
add_filter( 'locale_stylesheet_uri', 'chld_thm_cfg_locale_css' );

if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
function chld_thm_cfg_parent_css() {
wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array( ) );
}
endif;
add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );/* Enviar copia de formularios Divi al remitente */

add_filter( 'et_contact_page_headers', 'copia_formulario_divi_remitente', 10, 3 );

function copia_formulario_divi_remitente( $headers, $contact_name, $contact_email ) {

$headers[] = 'Cc: ' . $contact_email;

return $headers;

}
/* Enviar desde otro correo diferente de mail@tudominio */
add_filter('wp_mail_from', 'new_mail_from');
add_filter('wp_mail_from_name', 'new_mail_from_name');

function new_mail_from($old) {
return 'ricardo@sanandoalser.com';
}
function new_mail_from_name($old) {
return 'Ricardo SAS';
}

 

¿Pueden por favor indicarme los pasos? Muchas gracias

Respondido : 23/05/2020 4:06 pm
Ricardo
 Ricardo
Usuario experto

He probado un php como en 1) y no sé si es que no tengo bien creado el hijo pero no funciona, se cae el servidor. Si deshago el cambio y vuelvo al original ya si  puedo acceder a la web.

Respondido : 23/05/2020 4:11 pm

Cursos Gratuitos WordPress

Ricardo
 Ricardo
Usuario experto

He intentado avanzar con vuestro tutorial a mano: https://www.webempresa.com/blog/crear-temas-hijo-child-themes-en-wordpress.html

image

Pero me sale esto:

image

No sé que puede estar pasando pero hoy no es mi día. Probé de las formas, también con el plugin. COmo no me funcionó lo anterior, lo borré desde aquí y lo creé de nuevo.

 

image

 

Ruego orientación.

Respondido : 23/05/2020 5:12 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Primero asegúrate de crear correctamente el tema hijo, ya que entiendo que lo usarás para agregar el código.

La forma más simple es con un plugin, sino te funcionó con el plugin del artículo, prueba con este:

https://wordpress.org/plugins/child-theme-generator/

Asegúrate de activar el tema hijo y que funcione correctamente.

Envíanos la url de tu sitio para probar.

Saludos.

Respondido : 23/05/2020 5:28 pm

Ricardo
 Ricardo
Usuario experto

@jmarreros

John, con ese ya probé!! ¿Podéis mirar si pasa algo? Ahora lo tengo caído porque un compañero tuyo me dijo que hiciera una cosa y no redirige bien:

--

Hola, buenas tardes.

Una opción más sencilla en lugar de mover todos los ficheros es simplemente cambiar el directorio raíz del dominio en el apartado que te indicaba anteriormente: Dominios > Dominios adicionales

Verás que la ruta al directorio raíz de tu dominio se muestra en color azul. Haz click en el icono con forma de lápiz y sustituye lo siguiente: public_html/institutodelaconciencia

Cambiándolo por: public_html

Espero haberte ayudado con tu consulta. En caso contrario, no dudes en consultarnos para poder seguir ayudándote.
-------------
Un saludo,
David M.

 

--

Hoy es un problema tras otro. Por favor, puedes mirar si hay algún problema con la creación del child theme?? Ya os dije que al hacerlo con el plugin y al activar el child theme dejó de funcionar la página. No me pidáis por favor que repita cosas que ya he hecho. Por favor.

 

Espero tus noticias.

Respondido : 23/05/2020 5:38 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Solucina primero entonces el problema de renombrar la carpeta.

Si esto fue atendido por foro envía la url.

Si sigues con problemas revierte los cambios o evalúa restaurar tu sitio desde un backup, sino tienes backups para esto último revisa:
https://guias.webempresa.com/preguntas-frecuentes/gestionar-copias-de-seguridad-con-superbackup-en-cpanel/

Saludos.

 

Respondido : 23/05/2020 6:50 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Ricardo
 Ricardo
Usuario experto

@jmarreros

Hola John, yo no sé solucoinar una cosa que me habéise dicho vosotros, la he hecho y no funciona. Estoy parado toda la tarde con eso. ¿alguién puede ayudarme?

Respondido : 23/05/2020 6:54 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Desconozco que cambios has realizado, la información que envías no es suficiente.

Si tienes problemas evalúa recuperar una copia de tu cuenta de hosting, si sigues con problemas envía un ticket de soporte desde allí pueden ver detalles de tu cuenta y darte indicaciones más detalladas sobre como hacer la recuperación.

Saludos.

Respondido : 23/05/2020 6:57 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Ricardo
 Ricardo
Usuario experto

Ya está solucionado lo de la carpeta. Por favor, necesito avanzar con esto. 

Gracias por su comprensión

Respondido : 23/05/2020 7:12 pm
Ricardo
 Ricardo
Usuario experto

@jmarreros

Lo he hecho manual y me sale esto: No encontramos el tema principal. Por favor, instala el tema principal «DIVI».

 

De verdad necesito avanzar.

Respondido : 23/05/2020 8:43 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Ricardo
 Ricardo
Usuario experto

@jmarreros

Hola John, finalmente pude instalar el tema hijo. Hasta ahí todo ok. Pero en cuanto le meto nuevas funciones, se cae. No funciona ni la primera que me pasó Pepe. 

Por favor, ayudarme en esto a ver qué puede estar pasando. Ha sido un día muy improductivo. Ojala cambie la cosa mañana.

 

/* Enviar copia de formularios Divi al remitente */

add_filter( 'et_contact_page_headers', 'copia_formulario_divi_remitente', 10, 3 );

function copia_formulario_divi_remitente( $headers, $contact_name, $contact_email ) {

$headers[] = 'Cc: ' . $contact_email;

return $headers;

}

/* Enviar copia de formularios Divi al remitente */

add_filter( 'et_contact_page_headers', 'copia_formulario_divi_remitente', 10, 3 );

function copia_formulario_divi_remitente( $headers, $contact_name, $contact_email ) {

$headers[] = 'Cc: ' . $contact_email;

return $headers;

}

Respondido : 23/05/2020 8:53 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

El código es correcto, no veo que tenga errores de sintaxis, recuerda que tienes qeu agregar el código, no reemplazar.

Envíanos una captura de pantalla para ver como agregas el código

Revisa tu archivo error_log que esta en la raíz de tu cuetna de hosting y verifica los errores recientes.

Saludos.

Respondido : 23/05/2020 8:58 pm

Cursos Gratuitos WordPress

Ricardo
 Ricardo
Usuario experto

@jmarreros

Hola Jhon,

Gracias por tu respuesta. Mira ese no falla. Perdona, es este código:

 

/* Enviar desde otro correo diferente de mail@tudominio */
add_filter('wp_mail_from', 'new_mail_from');
add_filter('wp_mail_from_name', 'new_mail_from_name');

function new_mail_from($old) {
return 'ricardo@sanandoalser.com';
}
function new_mail_from_name($old) {
return 'Ricardo SAS';
}

 

Hay algo que no pongo bien. Lo que está en negrita lo edité yo para indicar que el correo se envíe desde esa dirección de corre electronico en lugar de hacerlo desde mail@sanandoalser.com.

Los a

 

 

Te adjunto los archivo logs. 

 

Gracias por tu ayuda

Respondido : 25/05/2020 7:24 pm
Argenis
 Argenis
Soporte CMS Webempresa Moderator

Hola Ricardo,

Verifica el código que estas agregando creo que hay un problema está en la sintaxis, segun entiendo del ejemplo que enviaste deberia ser asi :

add_filter('wp_mail_from', 'new_mail_from');
add_filter('wp_mail_from_name', 'new_mail_from_name');

function new_mail_from($old) {
return 'mail@sanandoalser.com';
}
function new_mail_from_name($old) {
return 'ricardo@sanandoalser.com';
}

Prueba con este y nos comentas

Saludos 🖐️ 

Respondido : 25/05/2020 7:41 pm

Ricardo
 Ricardo
Usuario experto

@argenis

Muchísimas gracias. ¡Funciona!

Respondido : 25/05/2020 8:57 pm