WordPress.org

Make WordPress Core

Ticket #18449: 18449.diff

File 18449.diff, 1.0 KB (added by Faison, 5 years ago)

Adding a filter to _get_list_table() to allow developers to return an object of their own class in place of core classes

  • src/wp-admin/includes/list-table.php

     
    4848                else
    4949                        $args['screen'] = null;
    5050
     51                /**
     52                 * Filter whether to short-circuit the _get_list_table() return.
     53                 *
     54                 * Returning a non-null value to the filter will short-circuit
     55                 * _get_list_table(), allowing developers to return an object
     56                 * of a custom class that extends or replaces one of the core
     57                 * list table classes.
     58                 *
     59                 * @param object|null $list_table Replacement List Table object to short-circuit with. Default null.
     60                 * @param string      $class      The type of the list table, which is the class name.
     61                 * @param object      $args       An object containing _get_list_table() arguments.
     62                 */
     63                $list_table = apply_filters( 'pre_get_list_table', null, $class, $args );
     64
     65                if ( null !== $list_table ) {
     66                        return $list_table;
     67                }
     68
    5169                return new $class( $args );
    5270        }
    5371