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 |
|---|---|
| 188 | |
| 189 | //Locate which directory to copy to the new folder, This is based on the actual folder holding the files. |
| 190 | if ( 1 == count($source_files) && $wp_filesystem->is_dir( trailingslashit($source) . $source_files[0] . '/') ) //Only one folder? Then we want its contents. |
| 191 | $source = trailingslashit($source) . trailingslashit($source_files[0]); |
| 192 | elseif ( count($source_files) == 0 ) |
| 193 | return new WP_Error('bad_package', $this->strings['bad_package']); //There are no files? |
| 194 | //else //Its only a single file, The upgrader will use the foldername of this file as the destination folder. foldername is based on zip filename. |
| 195 | |
| 196 | //Hook ability to change the source file location.. |
| 197 | $source = apply_filters('upgrader_source_selection', $source, $remote_source, $this); |
| 198 | if ( is_wp_error($source) ) |
| 199 | return $source; |
| 200 | |
| 201 | //Has the source location changed? If so, we need a new source_files list. |
| 202 | if ( $source !== $remote_source ) |
| 203 | $source_files = array_keys( $wp_filesystem->dirlist($source) ); |
| 204 | |
| 205 | //Protection against deleting files in any important base directories. |
| 206 | if ( in_array( $destination, array(ABSPATH, WP_CONTENT_DIR, WP_PLUGIN_DIR, WP_CONTENT_DIR . '/themes') ) ) { |