temas condicionales, secundarios y complementarios ✅
Hasta ahora hemos visto lo simple que es manejar las opciones de tema usando Theme Customizer Boilerplate y sus ganchos. Como registro probable, el paso es importante para conectar 'thsp_cbp_options_array' фильтарна кука y pasá ndole la variedad de opciones que desea usar en su tema.
Estoy seguro de que está familiarizado con los filtros de acción y filtro de WordPress (API complementarias) y cómo funciona. Puede definir su función personalizada y conectarse a un filtro existente usando la función add_filter:
add_filter( $tag, $function_to_add, $priority, $accepted_args );
Centrarse en el argumento de la prioridad. Su valor predeterminado es 10, por lo que no puede volver a usarlo, es la prioridad de ejecución de su trabajo. Baje el número, antes de que se ejecute su función. Entonces, si quieres algo como esto:
// Adding first message function my_theme_add_first_message( $content ) { $content .= 'First Message
'; return $content; } add_filter( 'the_content', 'my_theme_add_first_message', 1 ); // Adding second message function my_theme_add_second_message( $content ) { $content .= 'Second Message
'; return $content; } add_filter( 'the_content', 'my_theme_add_second_message', 2 );
Cuando encuentre el contenido en single.php o cualquier otra planta, puede ver el contenido de la publicación, seguir el primer mensaje, seguir el siguiente mensaje. Pero como es un mar en este fragmento del código, está cerca del primer metro de prioridad de ejecución. Piense en los ganchos como si resulte bolas de nieve rodando colina abajo recogiendo todo tipo de cosas en su camino.
¿Puedo aplicar una plantilla de personalización de temas?
Puedes manejarlo 'thsp_cbp_options_array' de archivo function.php en el tema usando la función de personalización (por ejemplo, my_theme_options_array) con el valor de prioridad establecido en 1. Esto significa que debe usar la función que está activa 'thsp_cbp_options_array' El filtro filter tiene la función DESPUÉS de my_theme_options_array que lo define. Ver una vista de este ejemplo:
function my_theme_options_array() { // Using helper function to get default required capability $thsp_cbp_capability = thsp_cbp_capability(); $options = array( // Section ID 'my_theme_new_section' => array( 'existing_section' => false, 'args' => array( 'title' => __( 'New Section', 'my_theme_textdomain' ), 'priority' => 10 ), 'fields' => array( /* * Radio field */ 'my_radio_button' => array( 'setting_args' => array( 'default' => 'option-2', 'type' => 'option', 'capability' => $thsp_cbp_capability, 'transport' => 'refresh', ), 'control_args' => array( 'label' => __( 'My Radio Button', 'my_theme_textdomain' ), 'type' => 'radio', // Radio control 'choices' => array( 'option-1' => array( 'label' => __( 'Option 1', 'my_theme_textdomain' ) ), 'option-2' => array( 'label' => __( 'Option 2', 'my_theme_textdomain' ) ), 'option-3' => array( 'label' => __( 'Option 3', 'my_theme_textdomain' ) ) ), 'priority' => 3 ) ) ) ) ); return $options; } add_filter( 'thsp_cbp_options_array', 'my_theme_options_array', 1 );
Este agregador Nueva sección del Personalizador con un campamento en la calle, llamado Mi botón de radio. Luego, usted, u otra persona, desarrolle un tema hijo para su tema y odlukuje mantenga Nueva sección, pero en lugar de Mi botón, sería mejor tener Mi casilla de verificación. Facil:
function my_child_theme_options_array( $options ) { // Using helper function to get default required capability $thsp_cbp_capability = thsp_cbp_capability(); /* * This time, we're only editing fields in my_theme_new_section in the $options array */ $options['my_theme_new_section']['fields'] = array( 'my_checkbox_field' => array( 'setting_args' => array( 'default' => true, 'type' => 'option', 'capability' => $thsp_cbp_capability, 'transport' => 'refresh', ), 'control_args' => array( 'label' => __( 'My Checkbox', 'my_theme_textdomain' ), 'type' => 'checkbox', // Checkbox field control 'priority' => 2 ) ) ); return $options; } add_filter( 'thsp_cbp_options_array', 'my_child_theme_options_array', 2 );
¿No es posible ir a las opciones de metro en my_theme_options_array y lo hice en la función my_child_theme_options_array? Es por eso que necesito empezar primero. 'thsp_cbp_options_array' hook Cuando cancelas las opciones del Boilerplate de Custom Boiler Theme. Luego, cuvano volvà a connecttarlo from my tema secundario, no querÃa eliminar por completo las opciones del tema principal, solo edititarlas opciji za ligamenti.[âmy_theme_new_sectionâ][âfieldsâ]no toda la matriz $ opciones.
Por cierto, también puedes conectarte 'thsp_cbp_options_array' el filtro principal del tema principal es uno de ellos. Decimos que la elección no agrava las características del territorio de los complementarios al tema y da que los complementarios tienen lo necesario para hacerlo realidad. Ahora tiene algunas opciones de personalización e incluso personalización adicional. Nuevamente, fácil:
function my_plugin_dependency_options_array( $options ) { // Using helper function to get default required capability $thsp_cbp_capability = thsp_cbp_capability(); /* * Only adding my_plugin_dependency_section if 'test-plugin.php' is active */ if ( is_plugin_active( 'test-plugin/test-plugin.php' ) ) { $options['my_plugin_dependency_section'] = array( 'existing_section' => false, 'args' => array( 'title' => __( 'Plugin Dependency', 'my_theme_textdomain' ), 'priority' => 10 ), 'fields' => array( /* * Text field */ // Field ID 'new_text_field' => array( 'setting_args' => array( 'default' => __( '', 'my_theme_textdomain' ), 'type' => 'option', 'capability' => $thsp_cbp_capability, 'transport' => 'refresh', ), 'control_args' => array( 'label' => __( 'Only shows if', 'my_theme_textdomain' ), 'type' => 'text', // Text field control 'priority' => 5 ) ), ) ); } return $options; } add_filter( 'thsp_cbp_options_array', 'my_plugin_dependency_options_array', 3 );
¿Es necesario desarrollar un complemento a la funcionalidad principal para usar el tema (como debe ser)? Puedes manejarlo 'thsp_cbp_options_array' también desde uno de los archivos de su complemento, de la misma manera que lo haría desde el archivo function.php de un tema.
No quiero verte con tus opciones
Cuando se trata de agregar opciones sobre un tema que se puede descargar, puede mantener uno de los principios más importantes de WordPress: Decisiones, sin opciones - nunca. Es importante buscar y comentar opciones agregadas de uso para cada detalle que tengas sobre el tema, pero esta no es una de las favoritas de la esperanza. Espero que estos sean solo trucos, especialmente la adición, especialmente la adición, detalles que tienen un tema, pero este no es un favorito de la esperanza. opciones sobre el tema de mis bajas son posibles.
Después de todo, si el tema es una opción, que es una opción para cosas como una radio en un tablero de radio, este es un tema, es un editor WYSIWYG y problemente no sea uno excelente.
Los temas de WordPress también se pueden utilizar para presentar el contenido de este estilo, pero para hacer todas las formas imaginarias. Si eres un controlador de tiempo, debes asegurarte de usar el lassuariquean de lassuarativas se ser.
Deja una respuesta