Cómo crear opciones de tema de WordPress Opciones de tema
Usar la API de configuración de WordPress es el método más simple, tiene la mayor personalización y requiere altos requisitos de programación.
Usar el tema Options Framework es el método más simple. No necesitas tener conocimientos de programación. Simplemente puedes instalarlo y usarlo. Es como una cámara de apuntar y disparar. No tengo expectativas demasiado altas en cuanto a personalización y rendimiento.
Utilice un marco temático y la premisa es utilizar este marco para crear temas. Muchos marcos excelentes son de código abierto pero no gratuitos.
El equilibrio entre facilidad de uso y rendimiento
Si desea buscar tanto la facilidad de uso como el rendimiento, y necesita conocer algo de código sin leer la documentación desesperadamente, entonces existe otra opción. Buena elección. El método viene de aquí.
Primero descargue el archivo de muestra, que es el tema secundario de Twentyten. Para conocer el método de instalación, consulte Cómo instalar un tema de WordPress.
Después de activar el tema, la pestaña Opciones del tema aparecerá debajo de las opciones de apariencia.
Esta página de opciones de tema está controlada principalmente por theme-options.php en la carpeta. Abra este archivo para ver cómo personalizar la interfaz de opciones de tema que necesitamos modificando el archivo.
Cómo usar theme-options.php
1. Importe el archivo
Coloque theme-options.php en el directorio del tema e impórtelo a través de lo siguiente código
p>
require_once ( get_template_directory() . '/theme-options.php' );
Si es un tema secundario
require_once ( get_stylesheet_directory() . '/theme-options .php' );
2. Modificar dominio de texto
El tema multilingüe de WordPress debe tener un dominio de texto en este archivo de muestra. Simplemente reemplace el texto completo con el dominio de texto de su propio tema.
3. Modifique el nombre del menú Opciones del tema en la pestaña Apariencia
El código en las líneas 13-18 se utiliza para generar el nombre de las Opciones del tema
/* * p>
* Cargar la página del menú
*/
función theme_options_add_page() {
add_theme_page( __( 'Opciones de tema' , 'sampletheme ' ), __( 'Theme Options', 'sampletheme' ), 'edit_theme_options', 'theme_options', 'theme_options_do_page' );
}
La función utilizada es add_theme_page, la función La definición es la siguiente, modifíquela según la definición
add_theme_page( $page_title, $menu_title, $capability, $menu_slug, $function);
$page_title controles el título de la página, $menu_title controla el nombre del menú
4 Generar opciones
El menú desplegable de selección y el botón de radio se generan definiendo matrices, que son $select_options y $. opciones_de radio respectivamente.
Las estructuras HTML como select, radio, input o checkbox se generan en la función theme_options_do_page().
5. Llamar elementos en las opciones del tema
$options es una matriz que genera todas las opciones en la página de opciones del tema. Tomando como ejemplo las opciones predeterminadas después de la instalación, el contenido de $. opciones es la siguiente
Array
(
[sometext] =>
[selectinput] => 0
[sometextarea ] =>
[opción1] => 0
[entrada de radio] =>
)
6. se almacenan en la tabla wp_options El nombre de la opción del tema en
Si no desea utilizar sample_options como nombre de la opción, puede cambiarlo por el nombre de su propio tema, suponiendo que se llame su tema. gran tema, agregue el siguiente código
función theme_options_init(){
Register_setting( 'sample_options', 'sample_theme_options', 'theme_options_validate' );
} p>
reemplazado con
función theme_options_init (){
registrar_setting( 'greattheme_options', 'great_theme_options', 'theme_options_validate' );
}
Reemplace el texto completo de sample_options con greattheme_options, reemplace todas algunas_theme_options con great_theme_options.
register_setting es una función en la API de configuración de WordPress, que se utiliza para registrar opciones y generar la estructura HTML a través de la función de devolución de llamada (devolución de llamada). El prototipo de la función es el siguiente
register_setting( $). grupo_opción, $nombre_opción, $sanitize_callback);