La forma de verificar el tema activo es wordpress principal o secundario

2

Estoy trabajando en un complemento en el complemento. Hago la carpeta de plantillas y en la carpeta de plantillas y hay archivos de complementos que muestran los datos de mi tipo de publicación.

Primer escenario

Cuando el usuario activa mi complemento, la carpeta de plantillas se mueve a la carpeta de temas activos. Está funcionando perfectamente.

Segundo escenario

Ahora si hay tema padre e hijo. Cuando el tema principal active la carpeta de plantillas, cambie al tema principal, pero cuando el usuario active el tema secundario, la carpeta de la plantilla también se moverá al tema secundario.

Ahora quiero que si el usuario activa el tema principal, luego la carpeta de la plantilla se mueva al tema principal, pero cuando el usuario active el tema secundario, entonces no se debe mover.

Me gusta:

if(parent theme active) {
    //files moved
} else {
    // Do nothing
}

Busco desde google y encontré la función wp_get_theme(); pero no es adecuada para mi trabajo.

Entonces, ¿hay algún gancho o función que pueda escribir y que resuelva mi problema?

Aquí está mi función de mover carpeta:

$foo_theme_dir = get_template_directory();
$foo_plugin_dir = plugin_dir_path( __FILE__ );

copy($foo_plugin_dir.'template/archive-foo_plugin.php', $foo_theme_dir.'template/archive-foo_plugin.php');
    
pregunta deemi-D-nadeem 22.05.2015 - 12:17

2 respuestas

3

Intento este código y resuelvo mi problema

if ( is_child_theme() === false ) {
    // files moved
} else {
    // do nothing
}

Gracias a @birgire

    
respondido por el deemi-D-nadeem 22.05.2015 - 13:29
1

Puedes probar lo siguiente:

add_action( 'switch_theme', function( $new_name, $new_theme )
{
    if( is_a( $new_theme->parent(), '\WP_Theme' ) )
    {
        // Child theme was activated
    }
    else
    {
       // Parent theme was activated
    }
}, 10, 2 );

para ver si el tema que acabas de activar es tema secundario o no.

    
respondido por el birgire 22.05.2015 - 13:13

Lea otras preguntas en las etiquetas