• Resuelto pepiswordpress3

    (@pepiswordpress3)


    Buenas! Soy nueva en esto de WordPress, estoy haciendo un curso online. El caso es que cuando he llegado al apartado de los temas hijo, he creado el archivo style-css en el tema hijo en Atom que estoy creando de farben basics y he añadido la cabecera de ejemplo que viene en la documentación sobre temas hijo de wordpress.org, he cambiado el template a farben-basic igual que como lo tengo escrito en themes de htdocs de MAMP, y cuando me voy al listado de temas, en vez de aparecerme el teme hijo, me sale un aviso que me dice:

    La plantilla no está disponible. Los temas necesitan un archivo de plantilla index.php. Los Temas hijo necesitan una cabecera de plantilla en la hoja de estilos style.css.

    Alguien podría ayudarme a descubrir qué estoy haciendo mal? Mil gracias! Pasad buen martes!

Viendo 8 respuestas - de la 16 a la 23 (de un total de 23)
  • Moderador almendron

    (@almendron)

    Aquí te dejo una guía completa.

    • Esta respuesta fue modificada hace 6 años, 3 meses por almendron.
    Iniciador del debate pepiswordpress3

    (@pepiswordpress3)

    @almendron gracias, pero ya lo he consultado. De hecho, los pasos que sigue mi profesor son los que se indican en la documentación sobre temas hijo de WordPress. gracias de todas maneras 🙂

    Hola @pepiswordpress3

    ¿Al final lo solucionaste?

    Iniciador del debate pepiswordpress3

    (@pepiswordpress3)

    Qué va, no hay manera… @martatorre

    Moderador almendron

    (@almendron)

    He replicado el problema y a mi me funciona perfectamente. Estos son los pasos:

    1. Copia la hoja de estilos a la carpeta del tema hijo (farben-basic-child)

    2.- Hoja de estilos en el tema hijo. He borrado primero todos los estilos. He dejado solo el encabezamiento. Deja el mismo salvo que después de Theme Name: Farben Basic Child tienes que añadir la línea Template: farben-basic y luego cambiar Text Domain: farben-basic por Text Domain: farben-basic-child

    3. Crea en la carpeta del tema hijo el archivo functions.php y copia en él lo siguiente:

    <?php
    add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
    function my_theme_enqueue_styles() {
     
        $parent_style = 'theme_stylesheet'; // This is 'twentyfifteen-style' for the Twenty Fifteen theme.
     
        wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
        wp_enqueue_style( 'child-style',
            get_stylesheet_directory_uri() . '/style.css',
            array( $parent_style ),
            wp_get_theme()->get('Version')
        );
    }

    El único punto aquí para explicar es por qué se asigna el valor theme_stylesheet a la variable $parent_style. Pues se pone eso porque se supone que es el $handle usado por el tema padre para registrar la hoja de estilos.

    Y digo «se supone» porque normalmente buscando wp_enqueue_style suele aparecer. Por ejemplo, en twentyfifteen tenemos

    // Load our main stylesheet.
    wp_enqueue_style( 'twentyfifteen-style', get_stylesheet_uri() );

    con lo que el $handle es aquí claro: twentyfifteen-style.

    En otros temas como del que estamos hablando, no está tan claro.

    En cualquier caso, funciona.

    • Esta respuesta fue modificada hace 6 años, 3 meses por almendron.
    Iniciador del debate pepiswordpress3

    (@pepiswordpress3)

    @almendron te debo una caña! Lo que no me funcionaba es que en la carpeta del tema hijo, en el archivo functions.php yo cambiaba ‘my_theme_enqueue_styles’ por «farben-basic-child-styles» y ahí venía el error. Qué gran peso me he quitado de encima! Mil gracias y feliz viernes! (Y por supuesto, mil gracias también a @martatorre que me ha ayudado tb un montón).

    Gracias a ti, ya podemos marcar el tema como solucionado.

    Que vaya bien! Buen fin de semana 😉

    Moderador almendron

    (@almendron)

    De nada. Un saludo.

Viendo 8 respuestas - de la 16 a la 23 (de un total de 23)
  • El debate ‘temas hijo’ está cerrado a nuevas respuestas.