Link ajustes en plugin

Cómo añadir un enlace para los ajustes en el listado de plugins

Si estas desarrollando un plugin o vas a desarrollarlo, puede resultarte de utilidad saber cómo añadir un enlace para los ajustes de tu plugin en el listado de plugins de WordPress

link ajustes

Como puede observarse en el listado, cuando el plugin está desactivado tenemos las opciones de Activar, Editar y Borrar. Si activamos el plugin, nuestras opciones cambian por defecto a Desactivar y Editar.

Muchos plugins tienen páginas propias de administración, algunos crean un elemento nuevo en el menú, otros añaden el enlace como elemento submenú de Apariencia, Herramientas, Ajustes… es por esto que en muchas ocasiones nos puede venir bien añadir un enlace de Ajustes para que el usuario final tenga a mano el enlace a la página de ajustes de nuestro plugin.

Para esto usaremos el hook plugin_action_links_{plugin_file_name}:

<?php

// Settings Link
public function my_settings_link ( $links ) {
    $settings_link = array( 'settings' => '<a href="' . admin_url(admin.php?page=MyPluginPage' ) . '">' . __('Settings', 'my-plugin-textdomain') . '</a>');

    return array_merge( $links, $settings_link );
}
add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), 'my_settings_link' );

Como vemos, en nuestra función my_settings_links recibiremos el parámetro $links, que es un array con los enlaces Desactivar y Editar. Creamos en una variable $settings_link un array con el enlace a la página de administración de nuestro plugin y retornaremos un array_merge de los enlaces por defecto ($links) y nuestro enlace ($settings_link).

De esta manera, desde el listado de plugins damos la posibilidad al usuario de encontrar un enlace para configurar los ajustes de nuestro plugin.

¿Te ha resultado útil esta información? 🍺

Si este post te ha resuelto un problema, invítame a un café o a una cerveza. Con este pequeño gesto me animas a seguir escribiendo.

Comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *:

  • El fin del tratamiento es únicamente la moderación de comentarios para evitar spam
  • La legitimación es tu consentimiento al comentar
  • No se comunicará ningún dato a terceros salvo por obligación legal
  • Tienes derecho al acceso, rectificación y eliminación de los comentarios