WP hooks navigation: Home/browse • Actions index • Filters index
To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).
The best way to understand what a hook does is to look at where it occurs in the source code.
do_action( "hook_name" )
apply_filters( "hook_name", "what_to_filter" )
.Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.
Line | Code |
---|---|
28 | */ |
29 | function plugins_api($action, $args = null) { |
30 |
|
31 | if( is_array($args) ) |
32 | $args = (object)$args; |
33 |
|
34 | if ( !isset($args->per_page) ) |
35 | $args->per_page = 24; |
36 |
|
37 | $args = apply_filters('plugins_api_args', $args, $action); //NOTE: Ensure that an object is returned via this filter. |
38 | $res = apply_filters('plugins_api', false, $action, $args); //NOTE: Allows a plugin to completely override the builtin WordPress.org API. |
39 |
|
40 | if ( ! $res ) { |
41 | $request = wp_remote_post('http://api.wordpress.org/plugins/info/1.0/', array( 'body' => array('action' => $action, 'request' => serialize($args))) ); |
42 | if ( is_wp_error($request) ) { |
43 | $res = new WP_Error('plugins_api_failed', __('An Unexpected HTTP Error occurred during the API request.</p> <p><a href="?" onclick="document.location.reload(); return false;">Try again</a>'), $request->get_error_message() ); |
44 | } else { |
45 | $res = unserialize($request['body']); |
46 | if ( ! $res ) |