Modifica la pestaña de ayuda de WordPress

This post was published 8 years ago. It may be exremely outdated.
Ayuda contextual modificada

Ayuda contextual modificada

En WordPress 2.7 se añadió un nuevo elemento al Panel de Administración: la pestaña de ayuda / ayuda contextual. Esta pestaña ofrece algo de información en las páginas de edición de artículos o en el escritorio, pero no sirve de mucho en las páginas de los plugins. Esto se debe a que para poder dar ayuda sobre nuestro plugin debemos recurrir a los filtros, sin embargo el filtro que afecta a la ayuda contextual no aparece en la documentación.

No obstante, una vez conocemos el nombre del filtro, que por cierto es contextual_help, es realmente fácil modificar el contenido, aunque debemos tener cuidado y prestar atención a las ocasiones en las que añadimos nuestra función al filtro, ya que nos descuidamos podemos hacer que la ayuda de nuestro plugin aparezca en todas las páginas, y esto no es lo que queremos.

Para añadir nuestra función sólo cuando se accede a la página de nuestro plugin debemos recurrir a una acción, llamada load-X, donde X es la página de nuestro plugin (en realidad puede ser cualquier página del Panel de Administración). El valor de X debe ser el que devuelve la función add_submenu_page (o add_N_page) para que se aplique correctamente la función.

Dicha la teoría, pasemos a la práctica:

// Añadimos un enlace al menú
$pagina = add_submenu_page('wp-carousel', 'Carousel Z', 'Carousel Z', 'administrator', 'edit-carousel', 'wp_carousel_carousel_options_page');
// Modificamos la pestaña de ayuda
add_action('load-'.$pagina, 'wp_carousel_custom_help_tab');
// Esta función añade la segunda función al filtro
function wp_carousel_custom_help_tab() {
// Añadimos al filtro
add_filter('contextual_help', 'wp_carousel_custom_help_tab_filter');
}
// Esta función cambia el contenido que se muestra
function wp_carousel_custom_help_tab_filter($help) {
echo "<h5>".__('WP Carousel's Quick Help', 'wp_carousel')."</h5>"; // Nuevo contenido
echo "<p>".__('You can find help here, here and here', 'wp_carousel').".</p>"; // Nuevo contenido
printf ("<p>".__('Please, fill up <a href="%s">this survey</a> in order to improve WP Carousel', 'wp_carousel').".</p>", WP_CAROUSEL_SURVEY); // Nuevo contenido
echo $help; // Imprimos también el contenido que hay por defecto
}

Como podéis ver, el funcionamiento es bastante sencillo.

PD: Sí, este código es parte de WP Carousel 0.5. Hacer uso de la pestaña de ayuda contextual es una de las novedades de la próxima versión, aunque es una de las novedades menos interesantes…

Leave a Reply