What is $tab in `install_plugins_{$tab}` hook?

If you go to the plugin-install.php inside the WordPress dashboard, there may be many tabs:

wp-admin/plugin-install.php?tab=featured
wp-admin/plugin-install.php?tab=popular
wp-admin/plugin-install.php?tab=recommended
...

plugin-install.php tabs

Here is the function you referenced:

File: wp-admin/plugin-install.php
145: /**
146:  * Fires after the plugins list table in each tab of the Install Plugins screen.
147:  *
148:  * The dynamic portion of the action hook, `$tab`, allows for targeting
149:  * individual tabs, for instance 'install_plugins_plugin-information'.
150:  *
151:  * @since 2.7.0
152:  *
153:  * @param int $paged The current page number of the plugins list table.
154:  */
155: do_action( "install_plugins_{$tab}", $paged ); ?>
156: 
157:    <span class="spinner"></span>
158: </div>

And $tab is actually what you get via $_GET['tab']:

File: wp-admin/plugin-install.php
08: // TODO route this pages via a specific iframe handler instead of the do_action below
09: if ( !defined( 'IFRAME_REQUEST' ) && isset( $_GET['tab'] ) && ( 'plugin-information' == $_GET['tab'] ) )
10:     define( 'IFRAME_REQUEST', true );
11: 

in our case the tabs would be:

featured, popular, recommended

based on the URL.

Related blitz quest:

Thank you. what about “tab=search”? my current problem is that when i start typing in the search box, once the plugin list appears, the various actions do not seem to apply.

This seems like a completely new action (read: new question). Have you tried the

action:query-themes

aka function:

wp_ajax_query_themes

If you need more help, you may create a new quest with details and someone may try to dig deeper.

Leave a Comment