¿Obtiene todas las secciones de personalizador de tema wp registradas?

4

¿Hay alguna forma de recuperar todas las secciones del personalizador registrado? Estoy creando un personalizador personalizado y no quiero que aparezcan otros complementos o temas que registran secciones personalizadas en esta página.

Puedo eliminar todas las secciones predeterminadas, pero no puedo predecir qué complementos o temas registrarán las secciones.

$wp_customize->remove_section( 'title_tagline' );

elimina la sección predeterminada de title_tagline.

Puedo ver todas las secciones registradas haciendo print_r( $wp_customize ); . Simplemente pasaría por encima de esa sección y crearía una matriz para anular el registro, pero parece que no puedo acceder a la matriz de secciones registradas debido a que está protegida.

¿Hay alguna otra forma de recuperar las secciones registradas?

    
pregunta EHerman 22.06.2015 - 18:50

2 respuestas

2

Después de investigar dentro de algunos archivos principales, pude resolver esto.

La siguiente función recuperará todas las secciones registradas en el personalizador y recorrerá cada una para cancelar el registro completo.

Esto debería ejecutarse antes de registrar cualquiera de sus propias secciones personalizadas, para no eliminar sus secciones registradas personalizadas.

function eherman_remove_registered_customizer_sections() {
    // retrieve the sections array
    $registered_sections = $wp_customize->sections();
    // loop over and remove each section
    foreach( $registered_sections as $section ) {
       $wp_customize->remove_section( $section->id );
    }   
}

Nada mal. ¡Esperamos que eso ayude a otros a medida que nos acercamos a un personalizador más poderoso!

Recursos:

respondido por el EHerman 22.06.2015 - 19:13
2

¿Has probado el método sections ? Puedes usar $wp_customize->sections() .

Ejemplo:

foreach ($wp_customize->sections() as $section_key => $section_object ) {
  echo $section_key . '<br />';
}
    
respondido por el Nilambar 22.06.2015 - 19:20

Lea otras preguntas en las etiquetas