WP_Plugins_List_Table
- Since
- 3.1.0
- Source
wp-admin/includes/class-wp-plugins-list-table.php:17
Core class used to implement displaying installed plugins in a list table.
Compatibility
- WordPress
- since 3.1.0
- 6.7.7
- 6.8.8
- 6.9.7
- 7.0.4
- 7.1.0
Present in every tracked release (6.7.7 to 7.1.0).
Hooks and filters fired · 16
Every hook that fires from inside WP_Plugins_List_Table, in the order it appears in the class, grouped by the method that fires it.
WP_Plugins_List_Table::prepare_items()
- apply_filters( all_plugins )filter line 115
- apply_filters( show_advanced_plugins )filter line 154
- apply_filters( show_advanced_plugins )filter line 159
- apply_filters( show_network_active_plugins )filter line 189
- apply_filters( plugins_list )filter line 319
WP_Plugins_List_Table::single_row()
- apply_filters( network_admin_plugin_action_links )filter line 1098
- apply_filters( plugin_action_links )filter line 1140
- apply_filters( plugin_action_links_{$plugin_file} )filter line 1162
- apply_filters( plugin_row_meta )filter line 1341
- do_action( after_plugin_row_meta )action line 1363
- apply_filters( plugin_auto_update_setting_html )filter line 1457
- do_action( manage_plugins_custom_column )action line 1486
- do_action( after_plugin_row )action line 1573
- do_action( after_plugin_row_{$plugin_file} )action line 1594
Properties · 1
$show_autoupdatesboolprotected- Whether to show the auto-updates UI.
Methods · 22
- __construct()Constructor.
- get_table_classes()Gets the CSS classes for the list table element.
- ajax_user_can()Checks whether the current user can activate plugins for this screen.
- prepare_items()Prepares the list of items for displaying.
- _search_callback()Callback to filter plugins by a search term.
- _order_callback()Callback to sort plugins by a given column.
- no_items()Message to be displayed when there are no items.
- search_box()Displays the search box.
- get_columns()Gets the list of columns for this list table.
- get_sortable_columns()Gets the list of sortable columns for this list table.
- get_views()Gets an associative array of status filter links for the views area.
- get_bulk_actions()Gets the available bulk actions for the plugins list table.
- bulk_actions()Displays the bulk actions dropdown.
- extra_tablenav()Displays extra table navigation for the plugins list table.
- current_action()Gets the current action selected from the bulk actions dropdown.
- display_rows()Generates the list table rows.
- single_row()Generates the markup for a single plugin row.
- get_primary_column_name()Gets the name of the primary column for this specific list table.
- add_dependents_to_dependency_plugin_row()Prints a list of other plugins that depend on the plugin.
- add_dependencies_to_dependent_plugin_row()Prints a list of other plugins that the plugin depends on.
- get_dependency_view_details_link()Returns a 'View details' like link for a dependency.
- get_view_details_link()Returns a 'View details' link for the plugin.
Source code
class WP_Plugins_List_Table extends WP_List_Table { /** * Whether to show the auto-updates UI. * * @since 5.5.0 * * @var bool True if auto-updates UI is to be shown, false otherwise. */ protected $show_autoupdates = true; /** * Constructor. * * @since 3.2.0 * * @see WP_List_Table::__construct() for more information on default arguments. * * @global string $status * @global int $page * * @param array $args An associative array of arguments. */ public function __construct( $args = array() ) { global $status, $page; parent::__construct( array( 'plural' => 'plugins', 'screen' => $args['screen'] ?? null, ) ); $status = 'all'; if ( isset( $_REQUEST['plugin_status'] ) ) { $status = sanitize_key( $_REQUEST['plugin_status'] ); } if ( isset( $_REQUEST['s'] ) ) { $_SERVER['REQUEST_URI'] = add_query_arg( 's', wp_unslash( $_REQUEST['s'] ) ); } $page = $this->get_pagenum(); $this->show_autoupdates = wp_is_auto_update_enabled_for_type( 'plugin' ) && current_user_can( 'update_plugins' ) && ( ! is_multisite() || $this->screen->in_admin( 'network' ) ); } /** * Gets the CSS classes for the list table element. * * @since 3.1.0 * * @return string[] Array of CSS classes for the table tag. */ protected function get_table_classes() { return array( 'widefat', $this->_args['plural'] ); } /** * Checks whether the current user can activate plugins for this screen. * * @since 3.1.0 * * @return bool Whether the current user can activate plugins. */ public function ajax_user_can() { return current_user_can( 'activate_plugins' ); } /** * Prepares the list of items for displaying. * * @since 3.1.0 * * @global string $status Current plugin status filter slug. * @global array<string, array<string, array<string, mixed>>> $plugins Array of plugin data arrays grouped by status. * @global array<string, int> $totals Count of plugins for each status group. * @global int $page Current page number. * @global string $orderby Column name to sort by.Changelog
Introduced in 3.1.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
About this page
- Parsed data
- Generated from the wordpress-develop 7.1.0 tag, from
src/wp-admin/includes/class-wp-plugins-list-table.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it. - Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.