From d1088756c8f6b68c25e2e3ed5285b875a98021b4 Mon Sep 17 00:00:00 2001 From: ruru4143 Date: Thu, 18 Jul 2024 16:24:05 +0200 Subject: [PATCH] settings: added/fixed link to settings in plugin page --- includes/admin/class-settings-page.php | 19 ++++++++++++++++--- includes/class-setup.php | 3 ++- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/includes/admin/class-settings-page.php b/includes/admin/class-settings-page.php index 9ad568e..f7c8b57 100644 --- a/includes/admin/class-settings-page.php +++ b/includes/admin/class-settings-page.php @@ -46,13 +46,26 @@ class Settings_Page { 'Activitypub Event Extension', 'Activitypub Events', 'manage_options', - 'activitypub-events', + self::settings_slug, array( self::static, 'settings_page' ) ); } - - + /** + * Adds Link to the settings page in the plugin page. + * It's called via apply_filter('plugin_action_links_' . PLUGIN_NAME). + * + * @param links already added links + * @return array original links but with link to setting page added + */ + public static function settings_link( $links ) { + return array_merge( + $links, + array( + 'Settings', + ) + ); + } public static function settings_page() { if ( empty( $_GET['tab'] ) ) { diff --git a/includes/class-setup.php b/includes/class-setup.php index f1715a8..2e42d0e 100644 --- a/includes/class-setup.php +++ b/includes/class-setup.php @@ -142,7 +142,8 @@ class Setup { } add_action( 'admin_menu', array( Settings_Page::static, 'admin_menu' ) ); - add_filter( 'plugin_action_links_Activitypub_Event_Extensions', array( Settings_Page::static, 'settings_links' ) ); + add_filter( 'plugin_action_links_' . ACTIVITYPUB_EVENT_EXTENSIONS_PLUGIN_BASENAME, + array( Settings_Page::static, 'settings_link' ) ); add_filter( 'activitypub_transformer', array( $this, 'register_activitypub_event_transformer' ), 10, 3 ); }