¿El gancho de activación del tema de WordPress?

3

Sé los muchos trucos para ver si dicho tema está activado, he rastreado internet. No estoy buscando volver a pegar ese código. Sin embargo, lo que busco es el clima o no. 3.3-3.5 lanzó una nueva función que hace algo con theme_init, vi algún tipo de gancho, pero no puedo recordar dónde, en el códice, tratar con hacer cosas después de que haya un tema ha sido inicializado ..

¿Alguien sabe?

    
pregunta TheWebs 16.02.2013 - 17:59

4 respuestas

0

Puede que estés buscando el after_setup_theme hook:

enlace

    
respondido por el birgire 16.02.2013 - 18:07
13

Para cualquiera que se encuentre con esta pregunta; hay una acción que puede enlazar (agregada 3.3.0) que se activa solo al activar un nuevo tema: after_switch_theme

add_action('after_switch_theme', 'mytheme_setup_options');

function mytheme_setup_options () {
  //doing a thing...
}

enlace

Para hacer algo en desactivación de un tema, puede usar la acción hermana: switch_theme

    
respondido por el sleepingkiwi 27.09.2014 - 21:33
3

Con las funciones de vista previa del tema, es poco probable que haya un gancho de activación del tema ya que los temas deben funcionar incluso sin estar "activados".

    
respondido por el Mark Kaplun 16.02.2013 - 18:21
1

Después de probar el método @sleepingkiwi, encontré un problema. Un cliente podría probar un tema diferente (aunque solo sea por un momento), esto podría crear un problema debido al hecho de que el gancho de "activación de tema" que creamos se ejecutó dos veces.

El mejor método es usar after_switch_theme en concierto con Wordpress "update_option" para guardar y luego verificar un aviso de activación haciendo que este método sea a prueba de balas.

Ejemplo:

add_action('after_switch_theme', 'sgx_activation_hook');
function sgx_activation_hook() {
    if(get_option('SOMEPREFIX_theme_activated') != '1') {

        update_option( 'SOMEPREFIX_theme_activated', '1' );

        // RUN THEME_ACTIVATION STUFF HERE

    }
}

Espero que esto ayude.

    
respondido por el Sagive SEO 18.09.2017 - 22:59

Lea otras preguntas en las etiquetas