En esta entrada aprendemos a crear funciones en las páginas de administración de nuestro plugin y a comprobar el registro de WordPress para ver errores o variables específicas, y al igual que en la parte 1, utilizaremos el plugin-plantilla-librería Backend Frontend Template: the WordPress Plugin Template que está disponible de forma totalmente gratuita desde este enlace o desde GitHub
Contenido de la guía:
- Parte 1: preparar del plugin, crear páginas de administración y crear etiquetas/shortcodes.
- Parte 2: crear funciones personalizadas en una página de administración y como usar el registro de WordPress.
- Parte 3: guardar datos usando el sistema de ajustes de WordPres.
- Parte 4: crear y eliminar tablas de datos en la instalación y desinstalación del plugin.
Crear función para una página de administración
En la parte 1 creamos un menú con dos páginas de administración en backend-frontend-template/admin/class-your-plugin-admin.php, volvemos a ese menú y ahora le definimos una función que será llamada por las dos páginas;
$this->admin_pages = [
"first_page" => [
"menu_title" => $this->__("First page"),
"page_title" => $this->__("This is my first admin page"),
"file" => "your-plugin-admin-display-first-page.php",
"function" => "my_first_custom_function",
],
"second_page" => [
"menu_title" => $this->__("Second page"),
"page_title" => $this->__("This is my second admin page"),
"file" => "your-plugin-admin-display-second-page.php",
"function" => "my_first_custom_function",
],
];
Y digo definir función porque en realidad siempre se carga una función: si no está definido en el array qué función usar, BFT cargará la función especificada en $this->admin_pages_function_default (por defecto llama a una función que comprueba los permisos y muestra la página especificada)
En nuestra función lo primero será comprobar que el usuario tiene los permisos para acceder al plugin y lo último será mostrar la página de administración especificada, por tanto nuestra función se verá así:
public function my_first_custom_function($args = array()) {
$this->admin_permission_check();
//your own programming
$text_for_you_page = "Lorem Ipsum";
$args["text_for_page"] = $text_for_you_page;
$this->admin_menu_page_display($args);
}
En este ejemplo hemos añadido/enviado un dato a la página que se cargará (your-plugin-admin-display-first-page.php y/o your-plugin-admin-display-second-page.php), de esta forma podremos mostrar valores calculados en nuestros paneles de administración.
Registro de WordPress
Mientras estamos construyendo un plugin, es necesario poder comprobar el registro de WordPress para comprobar qué errores detecta, así como poder nosotros enviar variables al registro para poder comprobar el valor de una variable.
Para ello abrimos wp-config.php y cambiamos:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
Ahora el registro de WordPress se podrá encontrar en wp-content/debug.log.
Pero eso sólo nos servirá para ver los errores que detecte WordPress, para poder enviar variables y ver su contenido utilizaremos:
error_log($string_or_number);
Pero esa función sólo servirá para mostrar cadenas de texto o números, por ello mejor utilizaremos la función que nos da Backend Frontend Template que permite cualquier dato:
$this->debug_log_write($whatever);
Además también se puede usar el nombre opcional que provee esta plantilla para plugins de WordPress:
$this->write_log($whatever);
Sigue en la parte 3
Gracias a esta guía has ahorrado ya decenas de horas, pero te espera ahorrar cientos de horas de trabajo e investigación con las próximas entradas.
0 comentarios